2
我有兩種模式,書籍和作者。每個作者都有很多書,每本書有許多作家,所以我成立了作者與書之間的多對多關係,如下所示:Django多對一/一對多關係
class Author(models.Model):
books = models.ManyToManyField(Book, related_name='authors')
class Book(models.Model):
# some fields
我有一定的警示標識方便,我需要每本書的對象與關聯相關作者,所以我(假設我對所有這些對象得心應手ID):
author = Author.objects.get(pk=id)
book = Book.objects.get(pk=book_id)
author.books.add(book)
logger.debug(author.book_set.all())
我得到的錯誤:
AttributeError: 'Book' object has no attribute 'author_set'.
我下面從Django的DOCUME慣例ntation在這裏,但它似乎並不適合我: https://docs.djangoproject.com/en/1.8/topics/db/examples/many_to_many/
有人可以解釋爲什麼我可能會遇到此錯誤?
將相關名稱設置爲'books'意味着您將使用'book.books.all()'獲取書籍的作者。我不確定這真的很有意義。 –
@JoeyWilhelm我誤解了這個問題,現在我已經修復了。 – Alasdair