基本的python flask两页表单输入和更新

时间:2016-04-27 12:50:28

标签: python forms input flask

我是一名新手,试图通过两个网页进行表单提交。

基本上,有两个网页,在app.py中,它们被路由为

@app.route('/')
def index():
...
@app.route('/results', methods=['POST'])
def results():
...

在'/'上有一个表单提交,在'/ results'上有一个表单提交。现在,单击“/”上的按钮会将用户重定向到“/ results”,输入文本也会发送到“/ results”

<form method=post action='/results'>
    <dl>                                                       
    {{ render_field(form.channel_title ) }}                    
    </dl>                                                      
    <input type=submit value='analyze' name='sumbit_btn'>      
</form>   

这部分有效。我现在要做的是单击“/ results”上的按钮,使其输入表单中的文本用于更新自身的某些文本。问题是,为了呈现'/ results',需要输入'/'。

def results():
    ....
    return render_template('results.html', channel=channel)

如何在'/ results'上实现此表单提交,然后发送自己的表单输入和'/'的旧输入,以便'/ results'可以更新?任何建议表示赞赏。感谢。

1 个答案:

答案 0 :(得分:1)

您可以将数据添加到烧瓶会话中。

from flask import Flask, session, abort, request, render_template

@app.route('/results', methods=['POST'])
def results():
    if request.form['channelname'] in ALLOWED_CHANNELS:
        session['channel'] = request.form['channelname']
    if 'channel' in session:
        return render_template('results.html', channel=session['channel'])
    else:
        abort(400)