Ich habe Formular in Symfony2 mit 2 Unterformtypen, die 2 Beziehungen in meiner Entität darstellen. invoiceAddress wird immer benötigt und es funktioniert OK, aber ich möchte, dass deliveryAddress nur dann optional bleibt, wenn alle Eingaben von deliveryAddress leer sind. Wenn ich es als nicht erforderlich festlegen, legt Symfony deliveryAddress als null fest, wenn nichts in Formular ausgefüllt ist, aber wenn einige Felder ausgefüllt sind, führt es Validation von Behauptungen für diese Entität nicht aus. Also was ich versuche zu erreichen, ist die symfony zu sagen, wenn die Form ganz leer ist, dann deliveryAddress als null setzen, aber wenn etwas im Formular gesetzt ist, dann führe die Validierungen auf normale Weise aus. Gibt es einen Weg, wie es geht? Vielen Dank.Symfony2 FormType optional ganze oder nichts
Mein Formulartyp sieht so aus und im Controller habe ich Standard $ form-> isValid Bedingung.
$builder->add('invoiceAddress',new AddressType())
->add('deliveryAddress', new AddressType(),["required" => false])
AdressType enthält nur einige primitive Typzuordnungen wie folgt aus:
$builder->add('firstName')
->add('lastName')...
Und in Entität Adresse:
/**
* @Assert\NotBlank
* @ORM\Column
* @var string
*/
private $firstName;
/**
* @Assert\NotBlank
* @ORM\Column
* @var string
*/
private $lastName;
@Assert \ Gültig() auf der deliveryAddress rockt! Vielen Dank :) – Aldos