Sto utilizzando DoctrineExtensions con StofDoctrineExtensionsBundle per ottenere il comportamento cancellabile.Comportamento gradevole e cancellazione effettiva dell'entità
Funziona davvero bene nel frontend della mia applicazione.
Nel back-end ho bisogno dell'opzione per eliminare le entità "difficili".
Ho disabile il filtro nei miei controllori di amministrazione (io uso SonataAdmin):
$filters = $this->getModelManager()->getEntityManager($this->getClass())->getFilters();
if (array_key_exists('softdeleteable', $filters->getEnabledFilters())) {
$filters->disable('softdeleteable');
}
Questo funziona (entità morbido cancellati compaiono nelle liste), ma quando provo a eliminarlo, l'entità fa diventa nuovamente cancellato. Come posso forzare una cancellazione "difficile"?
Come si fa a riabilitarlo dopo questo? – Jessica
@Jessica, puoi usare 'addEventListener' http://api.symfony.com/2.4/Symfony/Bridge/Doctrine/ContainerAwareEventManager.html#method_addEventListener – Dmitriy
Grazie mille, quello che ho fatto è stato memorizzare i nomi di tutti gli eventi che ho fatto rimuovilo da, quindi passa in rassegna quelle e aggiungilo di nuovo. – Jessica