2013-10-06 18 views
6

Ho questo po html:Come inserire HTML in Flask?

<form action='quiz_answers'> 
    <p> Question1? </p> 
    <input type="radio" name="q1" value="2">Answer1</input> 
    <input type="radio" name="q1" value="1">Answer2</input> 
    <input type="radio" name="q1" value="0">Answer3</input> 
    <input type="radio" name="q1" value="0">Answer4</input> 

    <p> Question2? </p> 
    <input type="radio" name="q2" value="2">Answer1</input> 
    <input type="radio" name="q2" value="1">Answer2</input> 
    <input type="radio" name="q2" value="0">Answer3</input> 
    <input type="radio" name="q2" value="0">Answer4</input> 
</form> 

e questo codice python:

from flask import Flask, render_template, request 

@app.route('/quiz') 
def quiz(): 
    return render_template('quiz.html') 

@app.route('/quiz_answers', methods=['POST']) 
def quiz_answers(): 
    q1 = request.form['q1'] 
    q2 = request.form['q2'] 
    q4 = request.form['q4'] 
    q5 = request.form['q5'] 

if __name__ == "__main__": 
    app.debug = True 
    app.run(host='0.0.0.0') 

Come potrei fare per l'aggiunta di fare un pulsante che, dopo che è stato cliccato su + domanda 1 e 2 hanno risposta, apre un nuovo modello con i risultati? Quindi, in breve, come faccio a creare un pulsante che dice "Sì, le domande sono state risolte, contare i valori e restituirli in una nuova pagina HTML"?

Il tutorial di Quickask di Flask attraversa le richieste HTTP ma non risponde alla mia richiesta in questa specifica situazione. Googling ha dato solo this stackoverflow thread che non mi ha portato da nessuna parte.

risposta

13

Dovresti essere in grado di aggiungere un pulsante submit al modulo su POST o OTTENERE la risposta dei dati al numero action.

In questo caso, probabilmente si vuole modificare la definizione di tag form per:

<form action="/quiz_answers" method="POST"> 

e aggiungere un pulsante di invio come questo:

<input type="submit" value="Submit!" /> 

Quando l'utente fa clic, si dovrebbero generare una richiesta POST a http://your_server/quiz_answers.

+1

Sì, ha funzionato perfettamente. Contrassegnato la risposta come risposta accettata. :] – user2374668

Problemi correlati