Я новичок в Django, и мне трудно понять, как работать с «вложенными» формами в шаблоне и как обрабатывать эти формы соответственно. Я создаю приложение для опроса, похожее на учебник, но более сложное. У меня есть несколько моделей (опрос, вопрос, выбор, голосование). Опрос содержит много вопросов, вопрос содержит много вариантов ответа.
Я хочу, чтобы пользователь мог одновременно просматривать все вопросы в опросе и голосовать за каждый вопрос, выбирая вариант из набора вариантов каждого вопроса. После того, как пользователь выбирает вариант ответа для каждого вопроса, он одновременно отправляет все свои голоса и обрабатывает их для создания объектов голосования.
Я действительно ломаю голову, как это сделать. Любая помощь будет принята с благодарностью.
Вот как устроены мои модели:
модели.py
class Poll(models.Model):
name = models.CharField(max_length=255, default="Unnamed Poll")
key = models.CharField(max_length=16, blank=True, editable=False, unique=True, db_index=True, null=True)
instructor = models.ForeignKey(User)
course = models.ForeignKey(Course)
active = models.BooleanField(default=False)
anonymous = models.BooleanField(default=True, help_text="Allow votes to be anonymous?")
class Question(models.Model):
question_text = models.CharField(max_length=255, verbose_name='Poll Question')
poll = models.ForeignKey(Poll)
class Choice(models.Model):
question = models.ForeignKey(Question)
choice_text = models.CharField(max_length=255, verbose_name='Response Choice')
class Vote(models.Model):
question = models.ForeignKey(Question)
choice = models.ForeignKey(Choice)
student = models.ForeignKey(User)