【发布时间】:2016-12-24 22:09:36
【问题描述】:
我有一个表单“form.html”,用户可以在其中填写他的信息,如姓名、地址、手机号码和图像。我有三个 html 页面“info.html”、“success.html”和“failure.html”
我要求用户付款,所以info.html会显示用户填写的信息,然后如果付款成功,他将付款,用户将被重定向到“success.html”,如果付款失败,用户将被重定向到“failure.html”
三个页面都是一样的,只有一行不同,支付状态“pending”或“success”
我可以将用户填写的信息打印到“info.html”,但如果需要,我想在 success.html 或 failure.html 上打印相同的信息。
routes.py:
@app.route('/form', methods=['GET', 'POST'])
def form():
global onlineAppForm, data
onlineAppForm = RegForm()
name = request.form['name'].strip()
father = request.form['father_name'].strip()
mother = request.form['mother_name'].strip()
address1 = request.form['txtAddress1'].strip()
data = {'name' : name, 'father' : father, 'mother' : mother, 'address1' : address1}
return render_template("apply1.html", data=data, form=onlineAppForm)
我尝试过这样做,但它当然行不通。那我该怎么做。
@app.route('/success')
def success():
return render_template('success.html', data=data, form=onlineAppForm)
【问题讨论】:
-
有什么问题?
-
请再次阅读问题,问题是我可以将用户信息打印到 info.html 页面,但我想将相同的信息传递到 success.html 页面。那我该怎么做呢
-
通过
post调用具有相同用户信息的页面。您将信息存储在哪里? -
M 将信息存储在“data”变量中。
-
您需要将信息存储在某种数据库或其他东西中,因为每个案例都应该与其他案例分离。一旦您尝试填写信息。二是用户付款。第三,根据您渲染特定模板的成功或失败。首先,您如何确保没有
id付款的用户与names匹配。您可以做的最后一件事是在每个请求或每个端点中传递data
标签: python-2.7 flask flask-wtforms flask-appbuilder