我最近在MVC实践中读到几乎所有与查询相关的数据都应该在模型中。但是,我感兴趣的是,当您使用外键更改应该在模型中或视图中的查询对象的显示名称时。
以下是我正在使用的示例。
// the id is being saved from the model
$callfood=Food::model()->getfoodlist();
// in this part $callfood is using a foreign key to display the 'food_id' as the names of the food
echo $form->dropDownList($model, 'food_id',$callfood); ?>
我认为dropDownList代码应该在视图中,但我确实感觉我正在改变它在下拉列表中的显示/保存方式。这应该留在视野中吗?或者是否应将其推入模型中,以便在我想更改视图并保留下拉列表时可以重复使用它?
答案 0 :(得分:0)
这取决于您的工作流程的设置方式。但基本上你将模型保存在变量中并将其发送到视图。然后,您可以使用dropDownList($ model,' food_id',$ f_model-> getfoodlist())。我建议你仔细看看PHP和Yii是如何工作的;)