Получить значение из динамического радиополя в колбе - PullRequest
0 голосов
/ 02 января 2019

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

Соответствующий код: Это моя HTML-форма:

{% for answer in answers %}
   <form method="POST" action="">
        <div class="btn-group-lg" data-toggle="buttons">
             <label class="btn btn-outline-info">
                  <input type="radio" name="options" id="option" class="btn btn-primary" value="Submit" required> {{answer.answer}}
             </label>
        </div>
   </form>
{% endfor %}

Здесь у меня есть .py код, где я делаю форму для моего RadioButton, где я делаю рут и у меня есть свои функции:

class QuestionForm(Form):
    radio_button = RadioField('option', choices=[])

question_list = []
answer_list = []

@app.route('/question/<int:index>/', methods=['GET','POST'])
def question(index):
    questions = getQuestions()
    for question in questions:
        question_list.append(question['question_id'])
    answers = getQuestionAnswers(question_list[index])
    questions_lenght = len(questions)
    form = QuestionForm()
    if request.method == 'POST' and form.validate():
        option = form.radio_button.data
        print(option)
        return render_template('question.html', question=questions[index]["question"], answers=answers, index=index, questions_lenght=questions_lenght, form=form)

    return render_template('question.html', question=questions[index]["question"], answers=answers, index=index, questions_lenght=questions_lenght, form=form)

def getQuestions():
    mysql = MySQLdb.connect(host="localhost",  
                    user="",        
                    passwd="", 
                    db="",
                    cursorclass=MySQLdb.cursors.DictCursor)    
    cur = mysql.cursor()
    cur.execute("SELECT * FROM questions")
    questions = cur.fetchall()
    cur.close()
    return questions

def getQuestionAnswers( question_id ):
    mysql = MySQLdb.connect(host="localhost",  
                    user="",        
                    passwd="", 
                    db="",
                    cursorclass=MySQLdb.cursors.DictCursor)    
    cur = mysql.cursor()
    cur.execute("SELECT * FROM answers WHERE question_id = %s", [question_id])
    answers = cur.fetchall()
    cur.close()
    return answers

if __name__ == '__main__':
    app.secret_key=''
    app.run(debug=True)  

Моя проблема в следующем блоке кода:

if request.method == 'POST' and form.validate():
        option = form.radio_button.data
        print(option)

Ничего не печатается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...