Как отобразить один вопрос на одной странице в шаблоне django?
Я создаю приложение на основе mcqs, где мне нужно создать отображение одного вопроса на каждой странице и когда пользователь отвечает на этот вопрос, я хочу перенаправить его на следующий вопрос, но я совсем запутался, как применить эту логику?
Я получаю все вопросы в вопросы = Вопрос.объекты.все() вот мой файл шаблонов
<div class="container">
<div class="text-danget mt-3">
<h3>Simple Js/Python App</h3>
<hr>
<table>
{% for i in questions %}
<tr>
<td class="text-primary">{{forloop.counter }}) {{i.question_text}}</td>
</tr>
{% for j in i.get_answers %}
<tr>
<td> <input type="radio" class="rb"> {{j.options}}</td>
</tr>
{% endfor %} {% endfor %}
</table>
</div>
</div>
Используйте один и тот же URL для всех вопросов: что-то вроде
'question/<int:qnumber>', QuestionView.as_view(), name='question_bynum')
Отображение вопроса, идентифицированного kwargs['qnumber']. Пользователь вводит или выбирает свой ответ. При отправке ответ сохраняется, а пользователь перенаправляется соответствующим образом:
qnumber += 1
return redirect( 'myapp:question_bynum', qnumber=qnumber )
Вы захотите продумать варианты навигации, чтобы пользователь также мог вернуться к предыдущим вопросам и изменить свои ответы (если это разрешено). Например, получите от пользователя номер вопроса, к которому он должен перейти в другом представлении, и сделайте перенаправление, как описано выше, но с qnumber = goto
