【发布时间】:2017-05-22 01:14:26
【问题描述】:
我正在使用 Flask 框架开发一个 Python Web 应用程序。该应用程序有几种形式,即:登录表、注册表单、检查余额表、提取现金表和转账表。我有一个 view.py 文件,我打算用它来呈现所有这些表单,如下所示:
###login form
@app.route('/login', methods = ['POST'])
def login():
form = LoginForm()
if request.method == 'POST':
if form.validate() == False:
flash('pin is required.')
else:
return render_template('index.html')
elif request.method == 'GET':
return render_template('login.html', form = form)
##withdraw cash
@app.route('/withdrawCash', methods=['GET', 'POST'])
def withdrawCash():
form = withdrawCashForm()
if request.method == 'POST':...
##transfer cash
@app.route('/transferCash', methods=['GET', 'POST'])
def transferCash():
form = transferCashForm()
if request.method == 'POST':......etc
这是否可以让一个视图文件呈现所有这些表单,或者我应该为每个表单提供视图文件?
【问题讨论】:
-
你在
form.amount之后写了一个)。 -
感谢您在从withdrawcash.html 中删除“)”后指出@stamaimer,我现在收到一个新错误,说
UndefinedError: 'form' is undefined。关于我的方法有什么问题的任何提示? -
模板文件
withdrawCash.html需要一个表格。但是您没有在视图函数withdrawCash中将表单传递给它。 -
当我在 views.py 中包含
form = withdrawCash()时,我收到错误RuntimeError: maximum recursion depth exceeded...非常令人沮丧,我必须承认 -
我认为表单类的名称必须是
WithdrawCash而不是withdrawCash。withdrawCash是视图函数的名称。
标签: python html flask flask-wtforms