在post-yii中添加评论
我正在尝试在我的博客网站中添加评论模块。我所做的是: No 1在Blog post view.php中添加一个在post-yii中添加评论,yii,Yii,我正在尝试在我的博客网站中添加评论模块。我所做的是: No 1在Blog post view.php中添加一个,以呈现tblcomments/\u表单 <?php $model_comments = new TblComments; $this->renderPartial('/TblComments/_form',array( 'comments'=>$model_comments, )); ?>
,以呈现tblcomments/\u表单
<?php
$model_comments = new TblComments;
$this->renderPartial('/TblComments/_form',array(
'comments'=>$model_comments,
));
?>
注意:此错误发生在第行的TblComments/_表单文件上:
<?php echo $form->errorSummary($model_comments); ?>
谁能解释一下为什么我已经定义了这个未定义的东西 我只是加上
$model_comments = new TblComments();
在TblComments/_form.php中,我只需添加
$model_comments = new TblComments();
在TblComments/_form.php中,一个小错误是,当您执行以下操作时:
$this->renderPartial('/TblComments/_form',数组(
“评论”=>$model_评论,
));
//或者即使您使用的是render()
传递给模型实例的视图将其作为$comments
获取,而不是$model\u comments
,这意味着如果您这样做:
$this->render('someview',array('model_there'=>$model_here));
视图必须在那里使用$model\u
,而不是在这里使用$model\u
。如中所述:
render()方法将第二个数组参数提取到变量中。因此,在视图脚本中,我们可以访问局部变量$var1和$var2
也就是说,您应该将实例创建移动到控制器,然后将其传递到视图:
//控制器操作
公共函数actionName($id){
$model_此处=新TBL建议;
$postmodel=loadModel($id);
// ...
$this->render('view',数组(
“postmodel”=>$postmodel,
'model_there'=>model_here
));
}
//in view.php
$this->renderPartial('/TblComments/_form',数组(
'model_there'=>model_there$
);
//然后在表格中使用$model\u
一个小错误是,当您执行以下操作时:
$this->renderPartial('/TblComments/_form',数组(
“评论”=>$model_评论,
));
//或者即使您使用的是render()
传递给模型实例的视图将其作为$comments
获取,而不是$model\u comments
,这意味着如果您这样做:
$this->render('someview',array('model_there'=>$model_here));
视图必须在那里使用$model\u
,而不是在这里使用$model\u
。如中所述:
render()方法将第二个数组参数提取到变量中。因此,在视图脚本中,我们可以访问局部变量$var1和$var2
也就是说,您应该将实例创建移动到控制器,然后将其传递到视图:
//控制器操作
公共函数actionName($id){
$model_此处=新TBL建议;
$postmodel=loadModel($id);
// ...
$this->render('view',数组(
“postmodel”=>$postmodel,
'model_there'=>model_here
));
}
//in view.php
$this->renderPartial('/TblComments/_form',数组(
'model_there'=>model_there$
);
//然后在表格中使用$model\u
将该行移动到呈现博客文章view.php的控制器操作,并将其传递到视图。通常,根据MVC原则,避免在任何视图文件中分配变量。哦,我第一次没有注意到你的错误,请检查我的答案,将该行移动到呈现博客文章vie的控制器操作w、 php,并将其传递给视图。通常,根据MVC原则,避免在任何视图文件中分配变量。哦,我第一次没有注意到你的错误,请检查一下我的答案谢谢,我理解了!:)谢谢,我理解了!:)
$model_comments = new TblComments();