2014-01-07 35 views
0

我正在尝试yii中的示例应用程序。当我使用cart.php创建新的视图页面名称时遇到问题。在该页面中我试图访问模型variable.Where跟它不确定变量模型..未定义的变量:yii中的模型

查看页面

<div class="form"> 
<?php $form=$this->beginWidget('CActiveForm', array(
    'id'=>'login-form', 
    'enableClientValidation'=>true, 
    'clientOptions'=>array(
     'validateOnSubmit'=>true, 
), 
)); ?> 


    <div> 
    <?php echo $form->labelEx($model,'cartId:'); ?> 
    <?php echo $form->textField($model,'cartId',array('size'=>20,'maxlength'=>120)); ?> 
    <?php echo $form->error($model,'cartId'); ?> 
    </div> 



<?php $this->endWidget(); ?> 
</div> 
+1

也添加你的控制器代码。 –

+0

在你的控制器中,$ this - > render('cart',array('model'=> $ model));其中$ model是您正在使用的数据库表的Model或您正在使用的Class。 –

+0

您是否在传递模型以查看页面? –

回答

2

在你CONTROLER

public function actionYourPageName(){ 
    $model = YourModel::model()->findbypk($id); 

    $this->render('YourPageViewFile', array('model'=>$model)); 
} 
1

我们需要添加下面的代码到动作方法,我们重定向到UI页面,这将自动加载模型到UI在yii框架

public function actionName(){ 
    //if u have id 
    $model = YourModel::model()->findbypk($id); 
      **or** 
    //if u don't have id to retrive record 
    $model = new YourModel(); 
      **or** 
    // loadModel is default methode in controller 
    'model'=>$this->loadModel($id), 

    $this->render('YourPageViewFile', array('model'=>$model)); 
} 
0

使用下面的代码你的控制器你有主键“$ id”

Public function actionPageName($id=NULL){ 
     $model = if($id)?YourModel::model()->findbypk($id):new YourModel(); 
     $this->render('page-name', array('model'=>$model)); 
}