Flask:在另一个页面上使用WTForm,而不是渲染表单本身

问题描述 投票:0回答:1

我有以下设置:

渲染页面:

@app.route('/one', methods=['GET'])
def one():
    form = AnyForm()
    return render_template(
        'form.html', form=form
    )

模板(剥离到基本):

{{ wtf.quick_form(form, action=url_for('two')) }}

路线/功能包括逻辑

@app.route('/two', methods=['POST'])
def two(form):
    print('FORMDATA: ' + form)
    return redirect(url_for('one'))

错误是:

TypeError: two() missing 1 required positional argument: 'form'

我该如何处理?

flask flask-wtforms flask-bootstrap
1个回答
1
投票

你必须定义函数qazxsw poi的形式,并从函数收到的post请求中填充它,这样你就不需要得到任何参数

试试这个:

two

和你尝试的方式一样,你必须给你的@app.route('/two', methods=['POST']) def two(): form = AnyForm(request.form) print('FORMDATA: ' + form) return redirect(url_for('one')) 函数一个像这样的表格参数

url_for

我不确定它是否有效

© www.soinside.com 2019 - 2024. All rights reserved.