2014-12-07 79 views
0
引导下拉

已经在这一段时间了。我正在设置一个drowndown盒子。我无法完全理解我应该如何填写它......以下是文档的链接:Dropdownyii2从模型

//$chapters[chapter['id','title','parent_id']] 
echo Dropdown::widget([ 
'items'=>$chapters, 
'options'=>'', 
]); 

当我尝试这个我需要一个标签,但是当我添加一个标签时,Yii说它不识别标签。

我只是不能得到它的工作,因为yii2是相当新的,它很难找到网上的例子。

+0

你如何添加标签? – 2014-12-08 01:19:53

+0

我已经试过几件事情,如: 回声下拉::小部件([ '标签'=> '标签', '项目'=> $章节, 或者: 回声下拉::小部件([ “ items'=> ['label'=>'labelname',$ chapters]。 我认为问题是$ chapters是一个数组,我不知道如何处理这个问题。对于我自己,现在它只发生在后台 – Wijnand 2014-12-08 06:47:18

回答

0

我发现下面的解决方案:

echo Html::activeDropDownList($model, 'id', 
    ArrayHelper::map(Chapter::find()->all(), 'id', 'title')); 

我没有使用DropDown :: Widget,但是这(确切地说?)是同样的事情。 接下来的步骤是给控制器提供ArrayHelper,而不是直接从视图中获取数据库。但现在这工作。

1

回声下拉菜单永远不会向您显示标签。 要么使用activeField或手动显示它使用echo Html::label(),你可以阅读更多有关params用于在标签浏览:http://www.yiiframework.com/doc-2.0/yii-helpers-basehtml.html#label()-detail

通常可以使用activeField,或至少是积极的模型

+0

最终我需要它在一个活动字段中是的,我想用它来选择一个父章,并且能够将子章添加到父章中 对我来说问题是我如何将它从文档翻译成实际代码..我是整个Yii Framewor的新手k,它将我抛弃了我的游戏.. – Wijnand 2014-12-08 11:19:42

+1

为什么不使用Gii为您创建代码?它很容易使用,它是事情如何工作的完美例子。 – 2014-12-08 11:24:33

+0

我不知道这样的东西存在。我读了大部分,不是全部的指南。我会研究这个! – Wijnand 2014-12-08 11:54:55