作者热门文章
- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
当尝试使用 WTForms 设置 SelectField 的默认值时,我将值传递给 'default' 参数,如下所示。
class TestForm(Form):
test_field = SelectField("Test: ", choices=[(1, "Abc"), (2, "Def")], default=2)
我也尝试了以下方法。
class TestForm(Form):
test_field = SelectField("Test: ", choices=[(1, "Abc"), (2, "Def")], default=(2, "Def"))
既不将默认选定字段设置为“Def”。这适用于其他类型的字段,例如 TextField。如何设置 SelectField 的默认值?'
最佳答案
我相信这个问题是由 Field
的 data
属性用 WTForms 不理解的东西覆盖了 default
引起的(例如一个 DB 模型对象——它需要一个 int
)。如果您像这样在构造函数中填充了表单,则会发生这种情况:
form = PostForm(obj=post)
解决办法是在表单填充完成后手动设置data
属性:
form = PostForm(obj=post)
form.category.data = (post.category.id
if page.category
else 0) # I make 0 my default
关于python - 如何为 WTForms SelectField 设置默认值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12099741/
我是一名优秀的程序员,十分优秀!