Gibt es einen besseren Weg, um Daten aus einer ODM-Entity-Klasse von doctrine2 in ein Zend2-Formular zu binden, außer bind()
?
Wenn ja, was wäre es? Würde ich die Daten einfach als Array abrufen und jedes einzelne Feld übergeben? Ich kämpfe damit und mache es wahrscheinlich schwieriger, als es sein muss.
Wenn ich die Funktion bind()
aufruft, wird ein Zend-Fehler ausgegeben, der auf den Standard-Hydrator verweist. Muss ich in meiner Entitätsklasse etwas Spezielles tun?
Edit: Hier sind die genauen Fehler, die Zend wirft
~ \ Hersteller \ zendframework \ zendframework \ library \ Zend \ Stdlib \ Hydrator \ ArraySerializable.php: 35
Zend \ Stdlib \ Hydrator \ ArraySerializable :: extract erwartet das zur Verfügung gestellte Objekt zur Implementierung von getArrayCopy ()
Sie lassen mich denken, ich muss entweder:
Damit Zend \ Form deine Einheit hydratisieren kann, musst du so etwas in deiner Entitätsklasse haben:
%Vor%Ich benutze den folgenden Code in module.config.php, um den Doktrin-Hydrator zu verwenden
%Vor%Glücklicherweise brauchen Sie in Ihren Entitäten nichts mehr, wenn Sie diesem Tutorial folgen:
1.) Stellen Sie sicher, dass Sie alle Daten validieren, die Sie in Ihren Tabellen haben (oder zumindest die Nicht-Null-Daten), da nur validierte Felder an die Datenbank gesendet werden. Es wurde mir vom Autor dieses Blogs gesagt. :)
2.) Wenn Sie die Ansicht für das Bearbeitungsformular erstellen, fügen Sie die ID zur Route hinzu:
%Vor%Viel Glück!
Tags und Links zend-framework2 doctrine-odm