通过模型的自定义管理器使用Django过滤器相关字段

时间:2020-09-25 09:44:06

标签: python django

我有2个模型和一个自定义管理器来过滤掉无效项目:

class List(models.Model):
    items = models.ManyToManyField("Item", through="ListItem")

class ListItemManager(models.Manager):
    def get_queryset(self):
        return super(ListItemManager, self).get_queryset().filter(item__is_active=True)

class ListItem(OrderedModel):
    item = models.ForeignKey("Item")

    objects = ListItemManager()

为什么这不起作用?

active_list_items = List.objects.first().items # Contains items with `is_active=False` :(

我想对多对多关系使用默认过滤器。通过我的直通模型过滤掉非活动项目的正确方法是什么?

0 个答案:

没有答案
相关问题