我正在编写一个更改密码表单,我想将原始密码传递给表单以进行验证,但唯一的方法是将其设置为隐藏字段并将其传递给其余部分。数据。我显然不想那样做,我宁愿把它从视图中传递给表单构造函数,但是如果它没有传入formdata那么那就不行了。
class MyForm(Form):
...
original_password = HiddenField()
...
def validate_current_password(form, field):
if field.data != form.original_password.data:
ERROR
form = MyForm(request.POST, original_password=password)
除非request.POST为空,否则不起作用,或者除非我实际使用表单呈现并提交原始密码。 form.original_password.data否则为空。
答案 0 :(得分:0)
对于那些熟悉formencode的“状态”变量的人,我通过继承Form并使用信息添加状态变量来帮助验证来解决这个问题。