处理表单的正确方法是什么,这是可选的,不使用验证?
#forms.py:
class PageForm(Form):
field1 = TextField('field1')
field2 = SelectField('field2', choices=choices)
#views.py
def page():
if request.method == 'POST':
if request.form.get('field1'):
#some action
if request.form.get('field2'):
#some other action
可以处理这样的表格吗?看起来很糟糕。
答案 0 :(得分:1)
总的来说,如果不需要表单验证,这种处理是正确的。只有一个建议:
使用method
装饰器的app.route
参数:
@app.route('/', methods=['POST',])
在宣布method==['POST',]
后进行装饰后,您的视图会接受仅发布请求,您可以删除if statement
。
另外,您可以考虑添加form
变量,这样您的代码就会变得更加冗长,而request.form
的计划数据不会被剥离:
form = PageForm(request.form)
# Than, access fields as form.<FIELD_NAME>.data