我正在尝试yii中的示例应用程序。当我使用cart.php创建新的视图页面名称时遇到了问题。在这个页面中,我试图访问模型变量。它说的是未定义的变量模型..
查看页面
<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>
答案 0 :(得分:2)
在你的控制器中
public function actionYourPageName(){
$model = YourModel::model()->findbypk($id);
$this->render('YourPageViewFile', array('model'=>$model));
}
答案 1 :(得分:1)
我们需要将下面的代码添加到我们重定向到ui页面的action方法中,这将自动将模型加载到yii框架中的ui
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));
}
答案 2 :(得分:0)
使用以下代码您可以使用主键&#34; $ id&#34;
Public function actionPageName($id=NULL){
$model = if($id)?YourModel::model()->findbypk($id):new YourModel();
$this->render('page-name', array('model'=>$model));
}