我有以下型号:
class Author(models.Model):
author_name = models.CharField()
class Book(models.Model):
book_name = models.CharField()
class AuthorBook(models.Model):
author_id = models.ForeignKeyField(Author)
book_id = models.ForeignKeyField(Book)
说到这里,我尝试使用Django ORM模拟这个查询(选择由特定作者编写的所有书籍,注意作者可以有许多书,书籍可以有许多作者):
^{pr2}$我在Django网站上读过this FAQ page,但在修改模型结构并删除AuthorBook之前,我很好奇是否可以使用当前结构模拟该查询。在
“AuthorBook”的模型似乎不正确。在
您应该使用
ManyToManyField
:然后您可以:
^{pr2}$您应该能够:
获取与author\u id限制匹配的图书对象的查询集。在
Django的好处是你可以把它做出来,然后在壳里玩。你也会发现 http://docs.djangoproject.com/en/dev/topics/db/queries/#spanning-multi-valued-relationships 是有用的。在
相关问题 更多 >
编程相关推荐