首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >自动筛选出不符合原则条件的行

自动筛选出不符合原则条件的行
EN

Stack Overflow用户
提问于 2015-03-06 15:29:21
回答 2查看 77关注 0票数 1

我有一个数据库已经在使用,我不能真正改变它。在这个数据库中,我使用了一个“软删除”:而不是实际删除一个记录,我只是修改一个标志(例如设置del=1)。

我不使用GEDMO模板(SoftDelete),但我需要相同的功能。目前,当我使用QueryBuilder/find函数时,它们会使用del=1返回记录。对关联实体的函数也有相同的想法;我每次都要检查是否是del=0

是否有一种方法可以自动过滤出带有标志del=1的记录,除非明确请求它?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-03-06 17:41:44

您可能可以使用原则过滤器:

http://doctrine-orm.readthedocs.org/en/latest/reference/filters.html http://www.michaelperrin.fr/2014/07/25/doctrine-filters/

使以下功能失效:

http://doctrine-orm.readthedocs.org/en/latest/reference/filters.html#disabling-enabling-filters-and-setting-parameters

票数 0
EN

Stack Overflow用户

发布于 2015-03-06 17:46:30

另一个透视图是通过这样的操作使代码更加可读性更好,也许更容易:

代码语言:javascript
复制
$entity = $em->getRepository("MyBundle:Entity")->findBy(['del' => 0]);

这只会增加很少的代码,对任何读者来说都是显而易见的。

编辑

或者,如果您的数据库和特权允许(例如,根在MySQL中),您可以创建一个只包含del=0记录的视图。对于MySQL,这里是创建视图文档。原则允许使用观点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28902065

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档