gpt4 book ai didi

python - 如何为 WTForms SelectField 设置默认值?

转载 作者:IT老高 更新时间:2023-10-28 21:43:39 29 4
gpt4 key购买 nike

当尝试使用 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 的默认值?'

最佳答案

我相信这个问题是由 Fielddata 属性用 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/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com