WTForms:如何在 SelectMultipleField 中选择选项?
·
回答问题
可以使用form.myfield.choices=[("1","Choice1"), ("2","Choice2")]设置选项
设置选定选项的方法是什么?
Answers
创建字段时可以使用choices和default关键字参数,如下所示:
my_choices = [('1', 'Choice1'), ('2', 'Choice2'), ('3', 'Choice3')]
SelectMultipleField(choices = my_choices, default = ['1', '3'])
这会将选项 1 和 3 标记为选中。
编辑: 默认值在表单被初始化时显然会被处理(复制到data成员中),因此之后更改默认值不会有任何效果,除非您在字段上手动调用 process()。您可以设置data成员,如下所示:
form.myfield.data = ['1', '3']
但我不确定它们中的任何一个是否是一个好习惯。
编辑: 如果您想实际设置数据而不是默认值,您可能应该使用表单来加载数据。
Form对象将formdata作为第一个参数,并使用它来自动填充字段值。 (您应该使用带有 getlist 方法的字典包装器)
您还可以在创建表单时使用关键字参数来设置数据,如下所示:
form = MyForm(myfield = ['1', '3'])
更多推荐

所有评论(0)