11

例如,调用 WTForms 字段对象会生成呈现的字段,并且任何参数都被视为属性。

form.field(attribute='value')

会返回类似的东西

<input attribute='value'>

如何添加 HTML5 自定义数据属性,例如包含连字符的 data-provide,使它们在 python 中无法解析为单个关键字参数?

4

2 回答 2

23

使用相应的键值对创建一个字典,并使用 ** 将其传递给字段调用:

attrs = {'data-provide': "foo"}
form.field(**attrs)

编辑:看起来@NiklasB 的评论应该是答案的一部分:对于那些使用带有flask -WTF{{ form.field( **{'data-provide': 'foo'} ) }}的烧瓶的人,请在模板中使用: 。

于 2012-09-05T16:20:33.167 回答
0

没有必要在 form.field 函数调用中使用这样的字典。** 将字典项解压缩为函数的命名参数,因此只需添加参数即可:

{{ form.field(data-provide='foo') }}

但是在该字段的任何必需参数之后执行此操作。换句话说,当您可以添加参数时,为什么要在此处解压缩字典?

于 2017-12-06T09:39:28.777 回答