DoctrineExtensionsとStofDoctrineExtensionsBundleを使用して、ソフト削除可能な動作を得ています。ソフト削除可能な動作と実際にエンティティを削除する
私のアプリケーションのフロントエンドではうまく動作します。
バックエンドでは、エンティティを「ハード」に削除するオプションが必要です。
私は私の管理コントローラ(私はSonataAdminを使用)でフィルタを無効にしている:
$filters = $this->getModelManager()->getEntityManager($this->getClass())->getFilters();
if (array_key_exists('softdeleteable', $filters->getEnabledFilters())) {
$filters->disable('softdeleteable');
}
これは(ソフト削除されたエンティティがリストに表示)動作しますが、私はそれを削除しようとすると、エンティティはありません再びソフト削除されます。どのように強制的に "ハード"削除を行うことができますか?
はどのようにあなたがこの後に再度有効にするには削除されますか? – Jessica
@Jessica、あなたは 'addEventListener'を使うことができますhttp://api.symfony.com/2.4/Symfony/Bridge/Doctrine/ContainerAwareEventManager.html#method_addEventListener – Dmitriy
ありがとう、私がやったことは、私がやったイベントの名前そこから削除し、それらをループして再追加します。 – Jessica