首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Flask-wtforms在表单提交和传递变量上重定向

Flask-wtforms在表单提交和传递变量上重定向
EN

Stack Overflow用户
提问于 2020-02-18 13:12:39
回答 1查看 368关注 0票数 0

我正在努力弄清楚为什么我不能将变量传递给我的重定向的url。我尝试了以下问题中的建议,但由于某些原因,它们不起作用。

redirect while passing arguments

How can I pass arguments into redirect(url_for()) of Flask?

我唯一能想到的是,这是因为我在重定向之前使用flask-wtforms来验证表单。对于这种情况,我还没有看到太多的答案/建议。所以我就来了

代码语言:javascript
复制
    @app.route('/quiz/', methods=['GET', 'POST'])
    def quiz():
        form = Quiz()
        if form.validate_on_submit():
            q1_answer = 'North'
            return redirect(url_for('result', q1_answer=q1_answer))
        return render_template('quiz.html', form=form)

    @app.route('/result/', methods=['GET', 'POST'])
    def result():
        q1_correct_answer = request.args.get('q1_answer')
        return render_template('result.html', q1_correct_answer=q1_correct_answer)

重定向按其应有的方式工作。呈现'result‘url及其对应的模板。我就是不能让变量(q1_answer)传递。我的模板总是返回值None。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2020-02-19 13:40:16

我想你是在用它

@app.route('/quiz/',methods='GET','POST')

def quiz():

代码语言:javascript
复制
form = Quiz()
if request.method == "POST" and form.validate_on_submit():
    q1_answer = 'North'
    return redirect(url_for('result', q1_answer=q1_answer))
return render_template('quiz.html', form=form)

@app.route('/result/',methods='GET','POST')

定义结果(Q1_answer):

代码语言:javascript
复制
return render_template('result.html', q1_correct_answer=q1_answer)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60274144

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档