查询多对多字段
Posted
技术标签:
【中文标题】查询多对多字段【英文标题】:Querying over many to many field 【发布时间】:2012-04-05 18:20:03 【问题描述】:我在我的 Django 应用程序中设置了以下模型
class School(models.Model):
name = models.TextField()
class Courses(models.Model):
name = models.TextField()
schools = ManyToManyField(School)
现在,我想找出所有提供特定课程的学校。例如,查找所有提供生物和化学的学校。我可以使用什么查询?
谢谢
【问题讨论】:
【参考方案1】:参见手册中的lookup that span relationships:
class Courses(models.Model):
name = models.TextField()
schools = ManyToManyField(School, related_name='courses_set')
School.objects.filter(courses_set__name__in=('biology', 'chemistry'))
【讨论】:
我收到错误“无法将关键字课程集”解析到字段中 尝试设置related_name
。以上是关于查询多对多字段的主要内容,如果未能解决你的问题,请参考以下文章