我正在使用Flask和Flask-WTForms,并且正在编写一个管理页面,在那里可以更新用户的值-包括密码。
我使用的表单页面与用于注册的表单页面相同,但由于密码更新不是必需的,因此我不想要求更新密码。用Flask-WTForms做这件事的正确方法是什么?
我已经在forms.py中获得了我的UserForm,并且我正在考虑创建一个自定义验证器,并拥有一个文件级require_password选项来覆盖默认检查。我对WTForms比较陌生,对Flask也有些陌生。
发布于 2013-01-13 22:28:38
这个解决方案似乎做到了我想要的:
在forms.py中,
from flask.ext.wtf import Optional
def make_optional(field):
field.validators.insert(0, Optional())
#Rest of code here...然后在我的flask端点中,我可以调用:
user_form = UserForm()
forms.make_optional(user_form.password)
if user_form.validate_on_submit():
#Go on your merry way!这似乎是我想要的-保留所有其他验证(例如确认),同时忽略任何没有密码的东西。
https://stackoverflow.com/questions/14304308
复制相似问题