Symfony 3 - 在字段外显示表单集合字段错误

时间:2016-04-26 09:07:35

标签: forms symfony symfony2-easyadmin

有谁可以告诉我为什么与表单集合相关的错误会显示在特定字段之外以及如何将其移动到您所看到的位置,如下图所示?

enter image description here

此字段的代码:

/**
 * @Assert\Valid
 * @ORM\OneToMany(
 *     targetEntity="PageFile",
 *     mappedBy="page",
 *     cascade={"persist","remove"},
 *     orphanRemoval=true
 * )
 * @var PageFile[]
 * @Assert\Count(max="1")
 */
private $pageFiles;

配置:

                - property: 'pageFiles'
                  type: 'collection'
                  type_options:
                      entry_type: 'Notimeo\PageBundle\Form\Type\MyFileType'
                      by_reference: false
                      error_bubbling: false

我正在使用EasyAdminBundle,这是我的整个项目:https://github.com/ktrzos/SymfonyBasic。问题适用于" Notimeo \ PageBundle "。

1 个答案:

答案 0 :(得分:3)

我看到其他错误位于输入字段之上,所以除非使用CSS以某种方式定位(这是非常不可能的),否则看起来错误与表单本身而不是输入字段有关。这是与无效CSRF令牌相同类型的错误,例如。

您的问题可能与Form Collection error bubbling有关,其中海报与您提出的问题基本相同。

建议设置:

cascade_validation' => true

或者,如果您使用的是Symfony 3:

error_bubbling  => false