新しいエンティティを作成するフォームがあります。そのエンティティには、そのフォームにも入力されている他のエンティティのコレクションがあります。
コレクション内のエンティティの検証オプションを使用してそれらのエンティティを検証したいのですが、うまくいきません。「メイン」エンティティ (Person) の検証ルールはチェックされますが、addressList
コレクション内のエンティティ (Address) の検証ルールはチェックされません。フィールドに無効な情報を入力すると、送信されたフォームが正常に検証されます。
この例では、street のアノテーションは検証で使用されません。
class Person
{
...
/**
* @ORM\OneToMany(targetEntity="Address", mappedBy="owner", cascade={"persist", "detach"})
*/
protected $addressList;
....
}
class Address
{
...
/**
* @ORM\ManyToOne(targetEntity="Person", inversedBy="addressList")
* @ORM\JoinColumn(name="person_id", referencedColumnName="id", onDelete="CASCADE")
*/
protected $owner;
/**
* @ORM\Column(type="string", length=75)
* @Assert\MinLength(
* limit=3,
* message="Street must have atleast {{ limit }} characters."
* )
*/
protected $street;
...
}
提供された Address エンティティを検証するフォームを取得するにはどうすればよいですか?