Symfony 2.6 - render individual choice field (radio, checkbox) by name(Symfony 2.6 - 按名称呈现单个选择字段(单选框、复选框))
问题描述
如何在 Symfony 2.6 的 Twig 中呈现单个字段(单个单选框/复选框输入字段)?
How can I render an individual field (single radio/checkbox input field) in Twig in Symfony 2.6?
假设我有一个简单的表格:
Let's say I have a simple form:
class TransportType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('transport', 'choice', array(
'choices' => array(
'road' => 'Car/bus',
'train' => 'Train',
),
'expanded' => true,
'multiple' => false
));
}
在以前的 Symfony2 版本中我可以使用:
In previous Symfony2 versions I could just use:
{{ form_widget(form.transport.road) }}
{{ form_widget(form.transport.train) }}
渲染单个单选按钮,但它似乎不再起作用.我知道我可以使用:
to render individual radio buttons, but it doesn't seem to work anymore. I know I can use:
{{ form_widget(form.transport[0]) }}
{{ form_widget(form.transport[1]) }}
但它不太灵活.当然,我可以遍历集合并检查名称,但这似乎是不必要的麻烦.没有更简单的方法吗?
but it's less flexible. Of course I can iterate over the collection and check for name, but this seems like unnecessary hassle. Isn't there an easier way?
我尝试了offsetGet
(它应该按名称返回一个孩子
),但它也只适用于数组索引.
I tried offsetGet
(which is supposed to return a child by name
), but it also works only with array index.
推荐答案
试试这个:
{% for key, transportItem in form.transport.children %}
{{ form_widget(transportItem) }}
{% endfor %}
这篇关于Symfony 2.6 - 按名称呈现单个选择字段(单选框、复选框)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Symfony 2.6 - 按名称呈现单个选择字段(单选框、复选框)


基础教程推荐
- 如何在 Laravel 5.3 注册中添加动态下拉列表列? 2021-01-01
- 学说 dbal querybuilder 作为准备好的语句 2022-01-01
- Cron Jobs 调用带有变量的 PHP 脚本 2022-01-01
- 有什么方法可以用编码 UTF-8 而不是 Unicode 返回 PHP`json_encode`? 2021-01-01
- 如何替换eregi() 2022-01-01
- 如何在 Laravel 中使用 React Router? 2022-01-01
- 在PHP中根据W3C规范Unicode 2022-01-01
- YouTube API v3 点赞视频,但计数器不增加 2022-01-01
- PHP PDO MySQL 查询 LIKE ->多个关键词 2021-01-01
- PHP 类:全局变量作为类中的属性 2021-01-01