Если мои модели выглядят так:
class Publisher(models.Model):
pass
class Book(models.Model):
publisher = models.ForeignKey(Publisher)
class Page(models.Model):
book = models.ForeignKey(Book)
и я хотел бы получить запрос для Publisher я do Publisher.object.all().
Если вы хотите убедиться в предварительной выборке, я могу сделать:
Publisher.objects.all().prefetch_related('book_set')`
Мои вопросы:
- Есть ли способ сделать эту предварительную выборку с помощью
select_relatedили я должен использоватьprefetch_related? - Есть ли способ предварительной выборки
page_set? Это не работает:
Publisher.objects.all().prefetch_related('book_set', 'book_set_page_set')