Python 遍历表单并仅打印表单中包含数据的值
我现在有一张表格Python 遍历表单并仅打印表单中包含数据的值,python,flask,wtforms,Python,Flask,Wtforms,我现在有一张表格 class StateForm(Form): court_info = TextField('Court Info', [validators.Optional()]) court_rules = TextField('Court Rules', [validators.Optional()]) jurisdictional_limit = TextField('Jurisdictional Limit', [validators.Optional()]
class StateForm(Form):
court_info = TextField('Court Info', [validators.Optional()])
court_rules = TextField('Court Rules', [validators.Optional()])
jurisdictional_limit = TextField('Jurisdictional Limit', [validators.Optional()])
complaint_form = TextField('Complaint Form', [validators.Optional()])
governing_law = TextField('Governing Law', [validators.Optional()])
more_info = TextField('More Info', [validators.Optional()])
当我收到请求时,我只希望它打印实际有信息输入的字段
@app.route("/update/<state>", methods=['POST'])
@login_required
def update_states(state):
form = StateForm(request.form)
for i in form.data:
print(i)
@app.route(“/update/”,方法=['POST']))
@需要登录
def更新_状态(状态):
form=StateForm(request.form)
对于form.data中的i:
印刷品(一)
我不想键入if语句的原因是,万一我们在表单中添加了更多字段
现在,
i
打印字段的名称,但不打印文本。我如何让它只打印包含文本的字段呢?K解决了这个问题,因为它是一本字典,必须这样做
for k, v in form.data.items():
print(k, v)
从Werkzeug 0.14和Flask 1.0.2版开始,request.form是一个不可修改的MultiDict,从MultiDict派生,用于处理具有多个值的单个键(例如,用于表单提交)。它的行为类似于一个字典,因此它将在提交的表单中打印每个键的第一个值,并遵守有关打印能力的常见警告:
for k, v in request.form.items():
print(k, v)