gpt4 book ai didi

python - 如何在 WTForms RadioField 中动态设置默认值?

转载 作者:太空狗 更新时间:2023-10-29 20:47:20 24 4
gpt4 key购买 nike

我正在使用 Python 构建网站 Flask我使用的框架 WTForms .在一种形式中,我有一个 RadioField定义如下:

display = RadioField('display', default='ONE')

这没有定义任何选项,因为我稍后会这样做(效果非常好):

myForm = MyForm()
myForm.display.choices = [('ONE', 'one'), ('TWO', 'two')] # This works fine

我现在想为 RadioField 设置默认值我为它设置选项之后。因此,我尝试从定义中删除默认值(我不确定 'ONE' 是否始终是一个可用的选择),然后在创建选项后创建默认值,就像我在上面所做的那样:

myForm.display.default = 'ONE'

不幸的是,这根本没有效果。如果我像以前那样在 Field 定义中手动设置它,它工作正常,但如果我在创建选择后动态设置它,则不会。

有人知道如何在 WTForms 中动态设置 RadioField 的默认值吗?欢迎所有提示!

最佳答案

您需要在添加选项并设置default 属性后运行myForm.process():

myForm = MyForm()
myForm.display.choices = [('ONE', 'one'), ('TWO', 'two')]
myForm.display.default = 'ONE'
myForm.process() # process choices & default

这是因为 default 被传播到字段值(在 RadioField 的情况下,checked 属性) process 方法,在构造函数中调用。

关于python - 如何在 WTForms RadioField 中动态设置默认值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31423495/

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