Django真正的一对多不是多对一的

时间:2017-01-25 16:03:29

标签: python django

是否有办法创建引用多个对象的外键字段,而不是相反。我希望作者引用多本书而不是多本书引用一位作者。我知道我可以创建多对多的领域但对我来说似乎很浪费。

1 个答案:

答案 0 :(得分:1)

反之亦然。

class Author(models.Model):

    ...

class Book(models.Model):
    author = models.ForeignKey('Author', related_name='books')

现在您可以访问由作者撰写的书籍:

author_object.books.all()

为您提供此作者所有书籍的QuerySet

编辑:

如果一本书可能有多位作者而作者可以写多本书,那么models.ManyToManyField是正确的方法。