У меня есть следующие модели:
class Project(models.Model):
name = models.CharField(max_length=300, unique=True)
description = models.CharField(max_length=2000)
class TemporaryUser(models.Model):
username = models.CharField(max_length=400)
project = models.ForeignKey(
Project,
on_delete=models.CASCADE,
related_name='users'
)
class QuestionSession(models.Model):
project = models.ForeignKey(
Project,
on_delete=models.CASCADE,
related_name='sessions',
blank=True,
null=True,
default=None
)
class Question(models.Model):
# stores the main json object with all required information
description = JSONField(
max_length=10000, blank=True, null=True, default=None
)
question_session = models.ForeignKey(
QuestionSession,
on_delete=models.CASCADE,
related_name='questions',
blank=True,
null=True,
default=None
)
class Answer(models.Model):
question = models.ForeignKey(
Question,
related_name='answers_list',
on_delete=models.CASCADE)
answer = models.CharField(max_length=500)
answered_by = models.ForeignKey(
TemporaryUser,
on_delete=models.CASCADE,
related_name='answers',
blank=True,
null=True,
default=None
)
В двух словах, мое приложение содержит вопросы, сессия - это набор вопросов, а проект - это набор сессий.Все пользователи уникальны для каждого проекта.
Я могу выбрать всех пользователей и все ответы в конкретном проекте со следующими данными:
TemporaryUser.objects.all().filter(project__id=project_id)
Как я могу сделать то же самое в течение сеанса?Я действительно не знаю, как это сделать, мне нужно фильтровать пользователей по сеансам, есть ли способ, как это сделать с моими отношениями?