1

我在模型中有 ManyToMany 字段,我想从另一个默认具有 _set 字段的模型中查询它:

class Airport(models.Model):
    name = models.CharField(max_length=1024, blank=True, null=True)

    def __unicode__(self):
        return unicode(self.name)

class Agent(models.Model):
    name = models.CharField(max_length=1024, blank=True, null=True)
    airports = models.ManyToManyField(Airport)
    def __unicode__(self):
        return unicode(self.name)

所以查询如下:

a=Agents.objects.filter(airports_name_contains='asd')

工作正常。但:

b=Airport.objects.filter(agent_set__name__contains='agent_')

无法将关键字解析'agent_set_name'为字段

我想准确查询Airport模型。有什么建议么?

4

1 回答 1

1

哎呀,我的坏。我找到了解决方案。manytomany 字段的 Django 表示在查找中显示“agent_set”,但该字段本身是“agent”:

agents=Airport.objects.filter(agent_name_contains='agent_')
于 2012-09-27T07:45:51.310 回答