我正在运行Symfony 3.4 LTS,我有一个实体Attribute
:
<?php
class Attribute
{
private $id;
private $code;
private $value;
private $active;
// My getters and setters
在数据库表下面:
我想在一个表单中得到所有code == 'productstatus'
的行。
<?php
$attributes = $this->getDoctrine()->getRepository(Attribute::class)->findBy(['code' => 'productstatus']);
// $attributes contains array with 3 objects 'Attribute'
$form = $this->createFormBuilder($attributes);
$form->add('value', TextType::class);
$output = $form->getForm()->createView();
如果我转储()Twig中的$output
变量:
...我无法循环显示3个字段的值。
{{ form_start(form) }}
{{ form_widget(form) }}
{{ form_end(form) }}
结果:
我的目标是允许用户在同一个表单(或多个表单,但在同一个页面中)中编辑特定属性的所有值。
2条答案
按热度按时间5vf7fwbs1#
我找到了解决办法:创建2个嵌套窗体并使用
CollectionType
。希望对您有所帮助。oipij1gg2#
您可以在AttributeType中使用if陈述式,如下例所示: