我正在用 Python 学习 Flash。我的 python 技能还可以,但我没有使用 Web 应用程序的经验。我有一个需要一些信息的表格,我想在提交后将其显示回来。我可以做那部分,但是我只能从该表单返回一个变量,即使表单中有 3 个变量。我可以将每一个单独归还,但不能全部归还。如果我尝试所有 3 个,我会收到 500 错误。这是我正在使用的代码:
from flask import Blueprint
from flask import render_template
from flask import request
simple_page = Blueprint('simple_page', __name__)
@simple_page.route('/testing', methods=['GET', 'POST'])
def my_form():
if request.method=='GET':
return render_template("my-form.html")
elif request.method=='POST':
firstname = request.form['firstname']
lastname = request.form['lastname']
cellphone = request.form['cellphone']
return firstname, lastname, cellphone
如果我将最后一个返回行更改为:
return firstname
它有效,或者:
return lastname
或:
return cellphone
如果我尝试两个变量,它只会返回第一个,一旦我添加第三个,我就会得到 500 错误。我确定我在做一些愚蠢的事情,但即使使用大量谷歌搜索我也无法弄清楚。任何帮助都会很棒。谢谢。
最佳答案
Flask 要求返回一个 str
或 Response
,在您尝试返回一个 tuple
的情况下。
您可以将tuple
作为格式化的str
返回
return '{} {} {}'.format(firstname, lastname, cellphone)
或者您可以将值传递到另一个模板
return render_template('my_other_template.html',
firstname=firstname,
lastname=lastname,
cellphone=cellphone)
关于python - Flask 返回多个变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39772670/