【问题标题】:yii2 bootstrap dropdown from model来自模型的 yii2 bootstrap 下拉菜单
【发布时间】:2014-12-10 19:31:34
【问题描述】:

已经有一段时间了。我正在尝试设置一个下拉框。我无法完全理解我应该如何填写它...这是文档的链接:Dropdown

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

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

我只是无法让它工作,而且由于 yii2 还很新,所以很难在网上找到示例。

【问题讨论】:

  • 如何添加标签?
  • 我已经尝试了几件事,例如:echo Dropdown::widget([ 'label'=>'labelname', 'items'=>$chapters, 或者:echo Dropdown::widget([ 'items'=>['label'=>'labelname',$chapters]。我认为问题在于 $chapters 是一个数组。我不知道如何处理。我想念那里的 for 循环我自己,现在它只是在后台发生。

标签: php yii2


【解决方案1】:

echo Dropdown 永远不会显示标签。 使用 activeField 或使用 echo Html::label() 手动显示它,您可以在此处阅读有关标签参数的更多信息:http://www.yiiframework.com/doc-2.0/yii-helpers-basehtml.html#label()-detail

您通常可以使用 activeField,或者至少是活动模型

【讨论】:

  • 最终我需要它在 activeField 是的。我想用它来选择父章节并能够将子章节添加到父章节。对我来说,问题是如何将它从文档转换为实际代码。我是整个 Yii 框架的新手,它让我脱离了游戏。
  • 为什么不使用 Gii 为您创建代码?它易于使用,是说明工作原理的完美示例。
  • 我不知道有这样的东西存在。我阅读了大部分指南,而不是全部指南。我会调查的!
  • 非常不错,您还可以扩展它以使其按您的意愿工作。它也是一个很好的学习工具,因为它是您自己的表格的最佳示例。
【解决方案2】:

我找到了以下解决方案:

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

我没有使用 DropDown::Widget,但它(完全?)做同样的事情。 下一步它从控制器中提供 ArrayHelper,而不是直接从视图中从数据库中获取。但现在这行得通。

【讨论】:

    猜你喜欢
    • 2015-08-04
    • 1970-01-01
    • 2015-07-18
    • 2017-03-06
    • 2012-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-30
    相关资源
    最近更新 更多