我们的应用程序将is_active用户模型中的字段设置False为代表已删除的用户。从对用户表的每次访问中
排除已删除用户 ( ) 的最佳做法是什么?where is_active=False
请考虑以下事项:
1. 该应用程序已经编写完毕,因此我们希望尽可能减少代码更改。
2. 应用程序使用:request.user,get_object_or_404()当然还有User.objects,因此解决方案必须将所有这些都考虑在内。
从我所做的研究中,我发现:
1. 代理模型:会迫使我对代码进行大量更改;我不知道它如何与requestand一起使用get_object_or_404()。
2. contribute_to_class: 可以用来覆盖objects管理器还是只添加一个新的?安全吗?
3. 中间件更改:我不想涉及这个。对我来说太冒险了。
有没有一种优雅的方式来做到这一点?