0

我在我的 symfony 应用程序中安装了 stof/DoctrineExtensions 并按应有的方式配置了所有内容。

当我删除一个实体时,已设置 deletedAt 并且一切正常,但是当我找到所有已删除的实体时仍然返回。

  $zorgboer = $em->getRepository('stroPublicBundle:Zorgboerderij')->find(3);

  $em->remove($zorgboer);
  $em->flush();

  $zorgboeren = $em->getRepository('stroPublicBundle:Zorgboerderij')->findAll();

@EDIT:好的,我找到了解决方案。问题是实体 Zorgboerderij 扩展了另一个实体。softdeletable 必须在父级上。现在它可以工作了

4

1 回答 1

1

也许你忘了SoftDeleteableFilter在 app/config.yml 中设置:

doctrine:
    ...
    orm:
        filters:
            softdeleteable:
                class: Gedmo\SoftDeleteable\Filter\SoftDeleteableFilter
                enabled: true

这将启用 SoftDeleteable 过滤器,因此“软删除”的实体不会出现在结果中。

于 2014-08-22T10:12:05.710 回答