Я пытаюсь создать простой инструмент MCQ в Django.Моя цель - получить что-то похожее на:
https://www.w3schools.com/quiztest/quiztest.asp?qtest=CSS
С точки зрения дизайна и поведения (то есть вопрос с несколькими флажками и кнопкой отправки, которая направляет меня к следующему вопросу, покаконец, где отображаются ответы и мой счет), чтобы я мог создать свой собственный MCQ для пересмотра курсов.
До сих пор мне удалось сохранить данные (т.е. вопросы, ответы, ...) вбаза данных.Я подумывал об использовании формы, как показано ниже:
[forms.py]
from django import forms
from .models import Proposition, Question
class ReadOnlyText(forms.TextInput):
input_type = 'text'
def render(self, name, value, attrs=None):
if value is None:
value = ''
return value
class QuestionForm(forms.Form):
q1 = Question.objects.filter.all()[0]
propositions = Proposition.objects.filter(question=q1)
choices = ((p.index, p.proposition) for p in propositions)
question = forms.CharField(widget=ReadOnlyText, label=q1.question)
propositions = forms.MultipleChoiceField(
required=True,
widget=forms.CheckboxSelectMultiple,
choices=choices,
)
Так что в этом коде проблема заключается в том, что я смотрю только напервый вопрос (q1) в моей базе данных.И я не слишком уверен, как передать номер следующего вопроса, когда пользователь нажмет кнопку отправки.
Но, возможно, мне здесь трудно, потому что форма не подходит для этогоЦель.
Если у кого-то есть идеи дизайна, решения для вышеперечисленного, мне будет более чем интересно их прочитать.