У меня есть эти модели (названия изменены):
class Blog(models.Model):
created_dtm = models.DateTimeField()
updated_dtm = models.DateTimeField()
title = models.CharField(max_length=200, null=True, blank=True)
creator = models.ForeignKey(Authors, on_delete=models.CASCADE, null=True, blank=True)
class BlogAuthor(models.Model):
blog = models.ForeignKey(Blog, on_delete=models.CASCADE)
author = models.ForeignKey(Author, on_delete=models.CASCADE)
class Meta:
unique_together = ('blog', 'author')
и мне нужно получить все блоги (и их данные), в которых участвует автор.
Проблема в том, что у каждого блога может быть несколько авторов.
Теперь я могу получить набор запросов идентификаторов блога, используя это:
BlogAuthor.objects.filter(author=request.user).values_list('blog_id', flat=True)
, а затем попробуйте получить каждый блог один за другим, используя цикл for
, но возможно ли получить список блогов одним запросом?