2014-11-05 116 views
2

Yii是最好的,但我在从yii1到yii2复制一些代码时遇到了一些麻烦,下面我使用yii中的代码在一个视图中呈现两个模型,喜欢用yii2来复制它。感谢任何帮助。感谢Yii2在一个视图上渲染两个模型

VwContractDetailsController 

public function actionView($id)//create new dataprovider and pass param from url 
    { 
     $events=$dataProvider=new CActiveDataProvider('VwContractEvents', array(
      'criteria'=>array(
       'condition'=>'Contractkey_id=:aid', 
       'params'=>array(':aid'=>$id) 
       ), 
       'pagination'=>array( 
      'pageSize'=>2 
      ), 
       'sort' => array(
     'defaultOrder' => 'EventDate DESC', 
    ), 
      )); 

$this->render('view',array(
      'model'=>$this->loadModel($id), 
      'events'=>$events, 

     )); 
    } 



vwContractEvents Index //provide full path for itemview 

<?php $this->widget('zii.widgets.CListView', array(
    'dataProvider'=>$dataProvider, 
    'itemView'=>'/vwcontractevents/_view', 
    'enablePagination' => true, 



)); ?> 


vwContractDetails view //render VwcontractEvents/index on vwContractDetails view 

<?php 
$this->renderPartial('/VwContractEvents/index',array('dataProvider'=>$events)); 
?> 

回答

3

renderPartial()yii2观点相对应的是:

yii\base\Controller::render() 
+0

感谢阿里,帮助理清:

yii\base\View::render() 

在控制器你呈现。欢呼声 – davidndunoon 2014-11-26 09:31:29

+0

@davidndunoon不客气亲爱的 – 2014-11-26 09:32:09

+0

在Yii2中,有一个renderPartial方法只接受2个参数,而不是Yii 1.1中的4个 – 2015-01-20 05:52:34

相关问题