2013-10-29 20 views
1

我需要包含一個只顯示某些字段的視圖(_form)。Yii renderPartial只有一些表單域

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

在這個函數中,你可以指定顯示哪些字段?

感謝

+0

你認爲什麼是代碼? – glomad

回答

1

可以顯示什麼文件夾它,例如像在視圖/用戶/ _form:

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

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

UPDATE: 您可以發送的RenderPartial一個變量,並檢查對於你的邏輯變量,在_form.php

in 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'); 
} 
+0

對不起,但我沒有正確解釋。我只想在_form部分內顯示一些字段。例如:在_form中我有用戶名,密碼和名稱字段。我只想顯示用戶名和密碼字段。有可能傳遞「RenderPartial」只有一些字段? – mariobros

0

renderPartial只呈現所提供的視圖文件(不包含佈局),所以如果你想只包括一些表單字段你將不得不通過一些變量(如數組),它將使用if語句(或類似的想法)輸出代碼的各個部分。

總之,您的問題的答案是:NO。 renderPartial的工作方式與render不同之處在於,它呈現不包含佈局文件的視圖文件。