如何在Twig中获取选择的ChoiceType的值?

3

在Symfony 3.3中,我已经尝试了类似于这样的东西,但没有响应:

<tr>
    {% for choice in form.vars.value.clients %}
        <td>{{ choice.value }}</td>
    {% endfor %}
</tr>

以下是我的formType:

$builder->add('name')
        ->add('contact')
        ->add('idprofession')
        ->add('idcard');

我没有进行任何更改,因为对于外键来说,默认情况下是一个选择,我想要恢复职业id的值。


尝试使用{{ dump(choice) }}并检查变量中是否有任何值或为空。 - Channaveer Hakari
{{ dump(choice) }} 不返回任何内容。 - user8537601
那么我认为您没有得到正确的值。您可以尝试在控制器中转储值以进行测试,例如print_r(from)。如果可能的话,您可以将相同的转储粘贴在上面的问题中。这样我们就能知道输出是什么了。 - Channaveer Hakari
2个回答

1
您可以使用selectedchoice Twig测试:
<option {% if choice is selectedchoice(value) %} selected="selected"{% endif %} ...>

文档中所述

希望这有所帮助。


0
你尝试过 form.clients.vars.value 吗?
因为这应该会给你选择的值。

@Mii 你确定已经选择了任何选项吗?可以提供一下你的表单类型代码吗? - kunicmarko20
这是我的实体的外键,我想获取外键的值。 - user8537601
@Mii 但是你的表单中是否有预先选择的内容?你能发布一下你的表单类型吗?没有表单的话,我无法提供太多帮助。同时请检查一下 Matteo 发布的答案。 - kunicmarko20

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接