请建议从Yii 2.0中的视图模板访问模型的最佳做法。
我们说我有一个视图模板文件index.php
,其中包含名为_form.php
的其他模板,其中包含文件_params.php
等。我需要访问某些模型&#39 ;方法。
所以我创建了这些模型并使用构造$this->render('_template', ['model' => $model, 'model2' => $model2, ...])
将它们从视图传输到视图?
或者更好我需要使用小部件?
或者将模型包含到视图中并直接访问破坏MVC模式的规则?
例如,我只需要使用模型中的一个方法来创建下拉菜单。我应该转移整个模型?或者更好我应该在模型或控制器中准备下拉数组并转移该数组?
答案 0 :(得分:0)
试试这个
例如文件
模型文件
$ product_details = ArrayHelper :: map(Products :: find() - > all(),'pid',
PRODUCT_NAME');
返回$ this-> render('new_purchase',['model'=>
$模型, 'product_details'=> $ product_details]);
查看文件
<select name="product_id[]" class="form-control">
<?php foreach($product_details as $key=>$val)
{
?>
<option value="<?php echo $key; ?>"><?php echo $val; ?></option>
<?php } ?>
</select>