Ich versuche, einen Formulartyp zu verwenden und ihn anzuzeigen, wenn der Benutzer einen Patch-Upload auf einmal hochladen möchte. Sagen Sie also 30 Dateien hochgeladen, 30 Formulare auf der Seite. Ich erhalte diesen Fehler:
Die Ansichtsdaten des Formulars müssen vom Typ scalar, array oder einer Instanz von \ ArrayAccess sein, ist aber eine Instanz der Klasse MS \ CoreBundle \ Entity \ Photo. Sie können diesen Fehler vermeiden, indem Sie die Option "data_class" auf "MS \ CoreBundle \ Entity \ Photo" setzen oder einen View-Transformer hinzufügen, der eine Instanz der Klasse MS \ CoreBundle \ Entity \ Photo in einen Skalar, ein Array oder eine Instanz von \ transformiert. ArrayAccess.
Der Code für den Galerie-Typ lautet:
%Vor%Der Fototypcode lautet:
%Vor%Meine Controller-Funktion ist:
%Vor%Jede Hilfe wäre großartig.
Sie sollten die Option data_class
nicht an den Sammlungstyp in Ihrem Webinar weitergeben GalerieTyp. Oder, wenn Sie den Standardwert des PhotoType überschreiben möchten (der bereits festgelegt ist, also sollten Sie nicht), können Sie es im Options-Array wie folgt angeben:
Stellen Sie sicher, dass do in Ihrem "GalleryType" die Option data_class
als Standard festgelegt hat. Es sollte ein Album sein, wie es scheint.
Auch in Ihrem Controller erstellen Sie das Formular nicht korrekt. Sie müssen setData()
mit dem Datentyp des Formulars aufrufen, in diesem Fall ein Album.
Tags und Links php symfony symfony-forms