select_related получить определенные поля
Подскажите как получить все поля в Post а у родителей только slug
У меня получиться что нужно в ручную прописывать все поля для Post так как применил only:
posts = Post.objects.filter(sub_post=self.object)\
.select_related('sub_post__topics_category__category')\
.only('sub_post__topics_category__category__slug',
'sub_post__topics_category__slug', 'sub_post__slug')
поля Post:
('name', 'id', 'text', 'discussion', 'cat_post', 'top_post')
Есть ли способ применить only только к select_related не трогая содержимого пост ?
Ответы (1 шт):
Автор решения: web developer
→ Ссылка
select_related следует использовать для всей модели, а затем уже отфильтровать требуемые поля. Это будет работать:
Articles.objects.select_related('blog').only('blog__name', 'title', 'create_time')