【问题标题】:Doctrine 2 (Mitchell van Wijngaarden): Soft Deletes Still Show in Search ResultsDoctrine 2 (Mitchell van Wijngaarden):软删除仍然显示在搜索结果中
【发布时间】:2014-11-16 16:15:18
【问题描述】:

我正在使用 Mitchell van Wijngaarden 的 Doctrine 解决方案 (https://github.com/mitchellvanw/laravel-doctrine/wiki/Soft-Deleting) 和 Laravel 4。

我已设置软删除,但仍让软删除的实体出现在搜索结果中。例如,以下查询:

$group_instructions = $this->entityManager->getRepository('GroupInstruction')->findBy(array('librarian'=>$user));

即使“deleted_at”字段已填充时间戳,此查询也会返回 GroupInstruction 类的所有实体。我的印象是所有软删除的项目都会被隐藏。有没有人有这方面的经验?

【问题讨论】:

    标签: laravel-4 doctrine-orm soft-delete


    【解决方案1】:

    为了激活软删除,您需要为 EntityManager 过滤器启用它。 我不确定这在 laravel 上究竟是如何完成的,但在教义上是这样完成的:

    $em->getFilters()->enable('soft-deletable');

    在此处查看更多信息: https://github.com/Atlantic18/DoctrineExtensions/blob/master/doc/softdeleteable.md#setup-and-autoloading

    【讨论】:

    • 这是一个完全不同的包。
    猜你喜欢
    • 2021-09-21
    • 2018-04-10
    • 2015-05-19
    • 2023-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多