Django Manager-覆盖auth.models组的对象管理器

时间:2018-09-24 14:01:30

标签: python django django-models django-managers

我是Django管理人员的新手。我正在使用python 2.7.15rc和Django 1.8。

通常,当我使用Group.objects.all()时,Django会返回所有组。我希望对这些组进行过滤...所以我刚刚为auth.models组创建了一个经理:

class DefaultGroupManager(models.Manager):
    test_ids = [1,2,3,4,5,6,7]
    def get_queryset(self):
        return super(DefaultGroupManager, self).get_queryset().exclude(pk__in=test_id)

我希望此管理器为默认管理器,所以当我使用Group.objects.all()时,它将被过滤,但是我不知道如何在不接触Django内部代码的情况下覆盖默认管理器。

我有一个大项目,所以我只想更改:

Group.objects.all()->未过滤

Group.objects.all()->与我的经理一起过滤

不更改单词“对象” Group.new_nanager.all()或类名NewGroupClass.objects.all()

这甚至可能吗? 我将不胜感激。 (我是编码新手)

0 个答案:

没有答案