a3522665 2013-02-01 10:54:30 3087次浏览 1条回复 0 0 0

在页面上 一个部分 重复用到很多次(这部分不是静态页,需要controller 处理 返回model)

我想把这 重复用到部分 做成一个单独页 用到它就调用它

应该怎么写?

  • 回复于 2013-02-01 12:38 举报

    继承CPortlet
    不知道是不是你想要的,如果不是请无视。给个例子。

    <?php 
    Yii::import('zii.widgets.CPortlet');
    Yii::import('application.modules.baobei.config.Main');
    
    class HotProduct extends CPortlet
    {
    	public $pid ; 
    	public $visible ; 
    	public $number = Main::HOT_PRODUCT_NUM ; 
    	
    	public function init()
    	{
    		$this->visible = (Yii::app()->user->isGuest) ? false : true ;
    		parent::init();
    	}
    	
    	protected function renderContent()
    	{
    		$criteria = new CDbCriteria(array(
    			'order'=>'rand()',
    			'condition'=>'t.id != :id ',
    			'params'=>array(':id'=>$this->pid),
    			'limit'=>$this->number,
    		));
    		if ($this->visible){
    			$criteria->addCondition('user_id !='.Yii::app()->user->id);
    		}
    		$model = HotInCategory::model()->findAll($criteria);
    		$this->render('hotProduct',array('model'=>$model,'main'=>$this->getImageDir()));
    	}
    	
    	private function getImageDir()
    	{
    		$main = new Main();
    		return $main ;
    	}
    	
    }
    
您需要登录后才可以回复。登录 | 立即注册