You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Yii2框架Twig视图中如何创建下拉选择表单字段?

在Yii2 Twig视图中创建下拉选择表单字段

嘿,刚接触Twig遇到这种转换问题太正常啦!我来帮你把PHP视图里的下拉框功能转成Twig版本~

首先,你要知道在Yii2的Twig模板里,调用ActiveForm的链式方法和PHP有点不一样:PHP里用->,Twig里换成.就好。另外,Twig里定义变量要用{% set %}标签。

对应你原来的PHP代码,完整的Twig版本应该是这样的:

<div class="form-group">
    <div class="col-lg-6">
        {% set items = ['minutes' => 'minutes', 'hours' => 'hours', 'days' => 'days'] %}
        {{ form.field(model, 'online_time_select').dropDownList(items, {'prompt': 'Select'}) | raw }}
    </div>
</div>

我来拆解一下每个部分:

  • {% set items = ... %}:这是Twig里定义变量的方式,完全对应PHP里的$items数组
  • form.field(model, 'online_time_select').dropDownList(...):这里用.替代了PHP的->,调用dropDownList方法,第一个参数是下拉选项数组,第二个参数是HTML配置(比如这里的prompt提示文本)
  • | raw:这个过滤器的作用和PHP里的<?= ?>一样,确保渲染出来的HTML不会被自动转义,不然表单字段会显示成纯文本哦

如果你的布局用的是col-sm-6(就像你当前Twig代码里的那样),只要把col-lg-6换成col-sm-6就行啦~

内容的提问来源于stack exchange,提问作者willy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 07:16:22