Python Django ORM查找语法
我有一个水果模型,水果有果园Python Django ORM查找语法,python,django,django-models,django-rest-framework,django-orm,Python,Django,Django Models,Django Rest Framework,Django Orm,我有一个水果模型,水果有果园 class Fruit(): orchards = models.ManyToManyField('Orchard', blank=True) 每个果园属于一个农场: class Orchard(): farm = models.ForeignKey('Farm', verbose_name='Farm', null=True, blank=True, on_delete=models.PROTECT) 每种水果都是幼苗 class Seedling(
class Fruit():
orchards = models.ManyToManyField('Orchard', blank=True)
每个果园属于一个农场:
class Orchard():
farm = models.ForeignKey('Farm', verbose_name='Farm', null=True, blank=True, on_delete=models.PROTECT)
每种水果都是幼苗
class Seedling():
fruit = models.ForeignKey('Fruit', editable=False, on_delete=models.CASCADE)
以下是我的尝试:
queryset = Seedling.objects.all().filter(fruit__orchards__in__farm=farm_id)
这会给我一个错误django.core.exceptions.FieldError:相关字段的查找无效:in
有人能澄清我的疑问吗?非常感谢您通过以下方式进行筛选:
queryset = Seedling.objects.filter(fruit__orchards__farm=farm_id)
queryset=seeph.objects.filter(水果园农场=农场id)
因此,如果没有。如果过滤一对多关系或多对多关系,则过滤存在的相关元素。谢谢,正是这样。这么简单。