Holen Sie sich alle Felder, die Namen aus einer Symfony-Form

Für ein Projekt brauche ich, um zu prüfen, ob alle Formularfelder vorhanden sind, in einem PUT Anfrage.

Einfache Daten-überprüfung mit der NotNull /NotBlank Einschränkungen ist nicht geeignet, da die Felder in der Anfrage kann mit NULL oder leere Werte aber Sie anwesend sein müssen.

Meine Idee ist, nehmen Sie alle Namen aus einem Formular-Feld ein und überprüfen Sie, ob die Felder vorhanden sind, die im request-array.

Den trick tun ich brauchen, um die Namen der Felder, es ist ein array in der Form-Klasse mit dem Namen orderedKeys enthält genau das, was ich will, aber die variable private.

Gibt es eine andere Möglichkeit, um Zugang zu diesen Schlüsseln ?

  • verwenden Sie die $Formular->getData() in deinem controller nach dem senden des Formulars und prüfen Sie, ob alle Feld im inneren korrekt sind , aber mit dem check $Formular->isValid() alle Felder werden sollte, wie erwartet, mit formtype auch besser werden kann, geben die Standardwerte für die Felder, die Sie wollen. In der $Wunsch auch Sie haben diese Felder $request->Anfrage->get('yourfield');
  • Die getData-Funktion gibt das Objekt "geformt" durch das Formular, ich sehe nicht, wie das mir helfen kann. Die isValid-Funktion nicht prüfen, ob alle Formularfelder vorhanden sind. Und ich will nicht zu setzen, default-Werte für Felder. Was ich will ist, um in der Lage sein zu überprüfen, das Request-Objekt und sehen, ob alle Formularfelder vorhanden sind, wenn nicht schicke ich einen Bad Request Ausnahme und bitten Sie den Benutzer, füllen Sie das Formular richtig für eine PUT-Anfrage.
InformationsquelleAutor Thotful | 2014-09-17
Schreibe einen Kommentar