Как разработать модель и сериализатор для Api?

Я получил это изображение в качестве UI

enter image description here

Здесь есть тема вопроса, ниже есть вопрос и пользователь должен дать ответ. Вопросов может быть около 5-6, и пользователю необходимо заполнить все вопросы, иначе возникает ошибка валидации или ошибка неполной формы.

Я думал об этом способе.

class ModelQuestions(BaseModel):
    MODEL_CATEGORY_CHOICES = (
        ('Circumstances', 'Circumstances'),
        ('Thoughts', 'Thoughts'),
        ('Feelings', 'Feelings'),
        ('Action', 'Action'),
        ('Result', 'Result'))
    model_subcategory = models.CharField(max_length=50, choices=MODEL_CATEGORY_CHOICES)
    questions = models.CharField(max_length=200)

    def __str__(self):
        return self.model_subcategory


class ModelAnswer(BaseModel):
    questions = models.ForeignKey(
        to=ModelQuestions,
        on_delete=models.CASCADE
    )
    answer = models.TextField()
    user = models.ForeignKey(User, on_delete=models.CASCADE)

    def __str__(self):
        return f'{self.questions} - by {self.user.fullname}'

правильно ли спроектирована база данных? как мне написать сериализатор, чтобы проверить, что все формы заполнены? любая подсказка будет очень кстати.

Вернуться на верх