Symfony formbuilder 格式化复选框

Symfony formbuilder formatting checkboxes

这看起来应该很简单。我试图避免必须手动构建表单,所以我希望有一种方法可以使用 formbuilder 来格式化复选框的输出。

我有一个扩展实体的值数组,用于呈现从数据库中提取的一系列复选框。目前它呈现输出的唯一方法是连续,我希望能够添加一个简单的换行符,但是没有明确的方法将 HTML 输入 formbuilder 模板/

我的表单如下所示:

    $builder
        ->add('ingredients',EntityType::class, array(
            'required' => false,
            'attr' => array('class' => 'form-control'),
            'class' => Ingredient::class,
            'query_builder' => function(IngredientRepository $ir) {
                return $ir->createQueryBuilder('s')
                    ->orderBy('s.name', 'ASC');
            },
            'multiple' => true,
            'expanded' => true,
        ))

我在树枝上有这个:

{{ form_start(form) }}
{{ form_row(form.ingredients) }}<br>
{{ form_end(form) }}

这当然只是 returns 一行中的所有字段。我希望能够遍历各个成分并应用格式,但我不确定如何执行此操作。

我试过这样的事情:

{{ form_start(form) }}
    {% for i in form_row(form.ingredients) %}
    {{ i }}<br>
     {% endfor %}
{{ form_end(form) }}

当然没用。我知道我可以在树枝中手动构建表单,但同样,我想避免这样做,因为它感觉很笨重。

希望得到建议

好的,这样就达到了我的目的。我试图将表单字符串用作数组;我只需要直接转到数组本身。有了这个,我可以生成行,然后用 CSS 设置它们的样式。

{{ form_start(form) }}
    {% for i in form.ingredients %}
    {{ form_widget(i) }}{{ form_label(i) }}<br>
     {% endfor %}
{{ form_end(form) }}