首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Symfony 4: choiceType没有正确显示choice_value

Symfony 4: choiceType没有正确显示choice_value
EN

Stack Overflow用户
提问于 2021-12-28 12:15:23
回答 2查看 197关注 0票数 0

我是Symfony的新手,我想使用choiceType构建一个选择选项。

因此,我将此代码添加到buildForm方法中:

代码语言:javascript
运行
复制
$builder->add('applications', ChoiceType::class, [
  'choices' => [
    '-- Choisir --' => NULL,
    'Admin' => '2',
    'Super' => '1',
    'visiteur' => '10',
    'admin local' => '98',
    'partenaire gestionnaire' => '16',
    'admin national' => '15',
    'soutien' => '11',
    'exploitant' => '12',
    'moe' => '99',
  ]
]);

但是,当我检查HTML代码时,我没有正确的数字:

代码语言:javascript
运行
复制
<select id="user_applications" name="user[applications]" class="form-control">
  <option value="0" selected="selected">-- Choisir --</option>
  <option value="1">Admin</option>
  <option value="2">Super</option>
  <option value="3">visiteur</option>
  <option value="4">admin local</option>
  <option value="5">partenaire gestionnaire</option>
  <option value="6">admin national</option>
  <option value="7">soutien</option>
  <option value="8">exploitant</option>
  <option value="9">moe</option>
</select>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-12-28 21:58:44

要在look的答案中添加一些上下文:如果您查看ChoiceType文档,您可以看到该类型允许您定义一个自定义占位符。尝试将代码更改为:

代码语言:javascript
运行
复制
$builder->add('applications', ChoiceType::class, [
    'placeholder' => '-- Choisir --',
    'choices' => [
        'Admin' => '2',
        'Super' => '1',
        'visiteur' => '10',
        'admin local' => '98',
        'partenaire gestionnaire' => '16',
        'admin national' => '15',
        'soutien' => '11',
        'exploitant' => '12',
        'moe' => '99',
    ]
])
票数 5
EN

Stack Overflow用户

发布于 2021-12-28 13:56:59

您需要删除'-- Choisir --‘=> NULL,通过另一个值,您不能使用空值。

如果值为空或相似,则symfony将所有值替换为整数。

最佳实践是在您的情况下使用占位符属性。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70506932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档