Мой сайт работает нормально, я могу получить значения радиокнопок на каждой странице, используя нумерацию колб.
Я хотел бы передать каждое выбранное значение переключателя в базу данных.
Вот мой HTML-код:
{% extends "layout.html" %}
{% block content %}
<form method="POST" action="">
<div class="jumbotron text-center">
{{ form.example }}
<h1>Start a test</h1>
{% for q in questions.items %}
<ul class="list-group">
<li class="list-group-item" name='que_desc'><a href="subject_test/{{q.sub_id}}">{{q.ques}}</a></li>
<div class="form-check">
<input class="form-check-input" type="radio" name="your_answer" id="exampleRadios1" value="ans1">
<label class="form-check-label" for="exampleRadios1">
{{q.ans1}}
</label>
</div>
<br>
<div class="form-check">
<input class="form-check-input" type="radio" name="your_answer" id="exampleRadios2" value="ans2">
<label class="form-check-label" for="exampleRadios2">
{{q.ans2}}
</label>
</div>
<br>
<div class="form-check">
<input class="form-check-input" type="radio" name="your_answer" id="exampleRadios2" value="ans3">
<label class="form-check-label" for="exampleRadios2">
{{q.ans3}}
</label>
</div>
<br>
<div class="form-check">
<input class="form-check-input" type="radio" name="your_answer" id="exampleRadios2" value="ans4">
<label class="form-check-label" for="exampleRadios2">
{{q.ans4}}
</label>
</div>
<br>
</ul>
<hr>
{% endfor %}
{{ form.submit(class="btn btn-outline-info") }}
</div>
<div>
{% if questions.has_prev %}
<li>
<a href="{{ url_for('question', page=questions.prev_num) }}">Previous</a>
</li>
{% endif %}
</br>
{% if questions.has_next == True %}
<li>
<a href="{{ url_for('question', page=questions.next_num) }}">Next</a>
</li>
{% else %}
<li>You are done hit check result</li>
<li>
<a href="{{ url_for('home') }}">Check result</a>
</li>
{% endif %}
</div>
</form>
{% endblock content %}
Вот моя форма:
class AnswerForm(Form):
your_answer = RadioField("", choices=[('ans1', 'ans1'),('ans2','q.ans2'), ('ans3','q.ans3'), ('ans4','q.ans4')])
example = RadioField('Label', choices=[('value','description'),('value_two','whatever')])
submit = SubmitField('Answer')
Вот маршрут:
@app.route('/question', methods=['GET', 'POST'])
@app.route('/question/page/<int:page>', methods=['GET', 'POST'])
def question(page=1):
quess = Question.query.order_by(func.rand())
quest = quess.limit(2).from_self()
questions = quest.paginate(page, per_page=1)
form = AnswerForm(request.form)
if request.method == 'POST':
print form.your_answer.data
return render_template('questionview.html', title=' Quiz',
questions=questions, form=form)
Я хотел бы использовать следующую кнопку для сохранения каждого значения в базе данных. Или использовать кнопку отправки для каждой страницы в базе данных