2
我有有多个作者,流派Book模型。以下是具有所有ForeignKey关系的模型。Django的 - 查询集获得所有相关的细节模型
models.py
class Book(models.Model):
title = models.CharField(max_length=200)
class Author(models.Model):
name = models.CharField(max_length=100)
class Genre(models.Model):
genre_name = models.CharField(max_length=50)
class Book_author(models.Model):
book = models.ForeignKey(Book)
author = models.ForeignKey(Author)
class Book_genre(models.Model):
book = models.ForeignKey(Book)
genre = models.ForeignKey(Genre)
views.py
def book_detail(request, book_id):
book = Book.objects.get(pk=book_id)
# how can i get iterated multiple authors, books attached to book dictionary
return render(request, 'detail.html', {'book': book})
书对象例如:
book = {
title: 'some title',
authors: [
{
id: 1,
name: 'name1'
},
{
id: 2,
name: 'name2'
}
],
genres: [
{
id: 1,
genre_name: 'somegenre1'
},
{
id: 1,
genre_name: 'somegenre2'
}
]
}
我怎样才能ACC ESS图书相关的作者,流派在我的views.py方法
感谢,在模板的作品,但我想这些作者,预订我的'views.py'方法并进行修改,在这里我做了什么关联种类'书= Book.objects.get(PK = book_id)book.book_genre_set.all() pprint商(VAR(book.genre))',但它给我'属性error'' '书' 对象有没有属性“genre''我怎样才能得到他们 – Srinivas
尝试,'对于book.book_genre_set.all():item.genre.genre_name'中的项目。 – zaidfazil
雅我知道了,再次感谢如果我有任何疑问进一步我会张贴在这里 – Srinivas