2

フォーム コレクションに関連するエラーが特定のフィールドの外に表示される理由と、下の画像に表示されているような場所に移動する方法を教えてください。

ここに画像の説明を入力

このフィールドのコード:

/**
 * @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 " に当てはまります。

4

1 に答える 1

3

他のエラーは入力フィールドの上にあることがわかります。そのため、これが CSS を使用して何らかの方法で配置されていない限り (これはほとんどありません)、エラーは入力フィールドではなくフォーム自体に関連しているように見えます。これは、たとえば無効な CSRF トークンと同じタイプのエラーです。

あなたの問題はおそらく、投稿者が基本的にあなたと同じ質問をするForm Collection エラーのバブリングに関連しています。

推奨事項は、次のように設定することです。

cascade_validation' => true

または、Symfony 3 を使用している場合:

error_bubbling  => false
于 2016-04-26T09:18:28.713 に答える