Archived post from my old blog (2007–2016), restored from the Wayback Machine. It is published as written at the time, in Italian; tools and versions are likely out of date.
Entities passed to the choice field must be managed
Symfony delle volte riesce ad essere snervante
Ho appena perso un bel po’ di tempo per risolvere questa eccezione
Sostanzialmente ho creato una classe Tag che ha una proprietà $parentTag che è sempre un’istanza di Tag, punta alla colonna id della stessa tabella e così via
Tutto mappato su Doctrine tramite annotazioni
Ho sistemato il form e tutto viene renderizzato bene, le nuove entità vengono create.
Il problema era nell’edit e update. Continuava a saltare fuori l’errore di cui sopra, ma solo per quelle che avevano la proprietà popolata
Ho aggiunto questo snippet prima che il form venga passato al vaglio nei metodi update e edit del controller
....
if (!$entity) {
throw $this->createNotFoundException('Unable to find Tag entity.');
}
if($entity->getParentTag()!=null){
$m = $em->merge($entity->getParentTag());
$entity->setParentTag($m);
$entity = $em->merge($entity);
}
....
e questo ha risolto il problema
One more down, on with the war ….
Grazie a Marco Pivetta per avermi messo sulla giusta strada con una sua risposta nel gruppo di symfony
← Archive