django 如果一个模型没有关系,如何用另一个模型过滤它

wqlqzqxt  于 2023-06-07  发布在  Go
关注(0)|答案(1)|浏览(142)

我有2个模型和模型ObjectList有m2m字段到CounterParty,但我需要显示从CounterParty模型按对象过滤的信息
我该怎么做?

class CounterParty(models.Model):
    name = models.CharField(max_length=150, verbose_name='Наименование')

class ObjectList(models.Model):

    name = models.CharField(max_length=250, verbose_name='Наименование')

    contractor_guid = models.ManyToManyField(CounterParty, related_name='object_contractor',default=None, blank=True)

我知道这是不正确的,但它应该看起来像这样

object = ObjectList.objects.get(id=1)
a = CounterParty.objects.filter(object_contractor=object)
umuewwlo

umuewwlo1#

你的尝试是正确的:您可以使用related_name进行反向查询。在模型上未定义的事实与此无关:可以在所有方向上进行查询。如果你不需要ObjectList,你可以用途:

CounterParty.objects.filter(object_contractor__id=1)

相关问题