【发布时间】:2020-11-27 03:57:39
【问题描述】:
我正在从数据库中获取数据 get_row = PolicyCheck.query.filter_by(id=1).first()
类 EditPasswordPolicyForm(FlaskForm):
greater = IntegerField('greater')
lesser = IntegerField('lesser')
special = BooleanField('special')
upper = BooleanField('upper')
lower = BooleanField('lower')
digit = BooleanField('digit')
update = SubmitField('update')
def __init__(self, *args, **kwargs):
super(EditPasswordPolicyForm, self).__init__(*args, **kwargs)
get_row = PolicyCheck.query.filter_by(id=1).first()
self.greater.default = get_row.greaterthan
self.lesser.default = get_row.lessthan
self.special.default = get_row.specialChar
self.upper.default = get_row.isupper
self.lower.default = get_row.islower
self.digit.default = get_row.isdigit
无论我填写表单并提交的值如何,值都会更新,但默认情况下所有表单字段都是空白的。我想在表单字段中显示来自数据库的最新更新数据作为默认值。当我填写表格并提交时,它应该被最新更新的值刷新为默认值,并且不应为空。
【问题讨论】:
-
您可以为该说法创建一个新的 html 模板,例如带有 render_field 函数的 formupdate.html
标签: python-3.x flask constructor flask-sqlalchemy flask-wtforms