【问题标题】: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)

现在,我想找出所有提供特定课程的学校。例如,查找所有提供生物和化学的学校。我可以使用什么查询?

谢谢

【问题讨论】:

    标签: python django many-to-many django-orm


    【解决方案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
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多