Как я могу сохранить значения переключателей для каждой страницы на веб-сайте с нумерацией фляг? - PullRequest
0 голосов
/ 20 апреля 2019

Мой сайт работает нормально, я могу получить значения радиокнопок на каждой странице, используя нумерацию колб. Я хотел бы передать каждое выбранное значение переключателя в базу данных.

Вот мой 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)

Я хотел бы использовать следующую кнопку для сохранения каждого значения в базе данных. Или использовать кнопку отправки для каждой страницы в базе данных

...