1

我需要包含一个仅显示某些字段的视图 (_form)。

$user = new User;
$this->renderPartial('//User/_form', array('model'=>$user));

在此功能中,您可以指定要显示哪些字段?

谢谢

4

2 回答 2

1

您可以显示它是什么文件夹,例如在 views/user/_form 中:

$this->renderPartial('application.views.user._form', array('model'=>$user));

http://www.yiiframework.com/doc/api/1.1/CController#renderPartial-detail

更新:您可以在 _form.php 中发送renderPartial 一个变量并使用您的逻辑检查该变量

在 form.php 中

$this->renderPartial('application.views.user._form',
     array('model'=>$user , 'condition'=>$condition));

在你的 _form.php

if($conition == 'check for something') // show the field, or Not!
{
    echo $form->textField($user, 'username');
}
于 2013-10-29T17:28:32.137 回答
0

renderPartial只呈现提供的视图文件(不包括布局),所以如果你只想包括一些表单字段,你将不得不传递一些变量(如数组),它将使用if语句(或类似的想法)输出代码的各个部分)。

简而言之,您的问题的答案是:不。不同之处在于它呈现视图文件而不包括布局文件renderPartialrender

于 2013-10-30T10:29:35.987 回答