symfony : können wir nicht eine versteckte Einheit-Feld?

Ich bin die Darstellung einer form mit einer Entität Feld in symfony.

Es funktioniert gut, wenn ich wählen Sie ein regelmäßiger Entität Feld.

$builder
    ->add('parent','entity',array(
            'class' => 'AppBundle:FoodAnalytics\Recipe',
            'attr' => array(
                'class' => 'hidden'
            )
        ))

Wirft er folgenden Fehler wenn ich wählen ->add('parent','hidden') :

Des Formulars anzeigen von Daten wird erwartet, dass sein Typ Skalar, array oder ein
Instanz von \ArrayAccess, aber eine Instanz der Klasse
AppBundle\Entity\FoodAnalytics\Rezept. Sie können diesen Fehler vermeiden, indem Sie
die Einstellung "data_class" - option, um
"AppBundle\Entity\FoodAnalytics\Rezept" oder durch das hinzufügen einer Ansicht
Transformator wandelt eine Instanz der Klasse
AppBundle\Entity\FoodAnalytics\Rezept Skalar, array oder eine Instanz
der \ArrayAccess. 500 Internal Server Error - LogicException

Können wir uns nicht versteckt haben Entität Felder ?? Warum nicht? Bin ich verpflichtet, ein weiteres verstecktes Feld zum abrufen der Entität id?

EDIT :

Im Grunde, was ich versuche zu tun, ist zu Hydrat der form, bevor es angezeigt wird aber verhindern, dass der Benutzer das ändern eines seiner Felder (die Eltern hier).
Dies ist, weil ich mich übergeben zu müssen, die die Id als parameter, und ich kann es nicht in der form action url.

InformationsquelleAutor der Frage Sébastien | 2014-11-23

Schreibe einen Kommentar