调用WTForms字段对象会生成渲染字段,例如,任何参数都将作为属性。
form.field(attribute='value')
会返回类似
的内容<input attribute='value'>
如何添加HTML5自定义数据属性,例如包含连字符的data-provide,使它们在python中不可解析为单个关键字参数?
答案 0 :(得分:22)
创建一个包含相应键值对的字典,并使用**将其传递给字段调用:
attrs = {'data-provide': "foo"}
form.field(**attrs)
编辑:看起来@NiklasB的评论应该是答案的一部分:
对于使用flask flask-WTF的人,请在模板中使用:{{ form.field( **{'data-provide': 'foo'} ) }}
。
答案 1 :(得分:0)
没有必要在form.field函数调用中使用类似的字典。 **将字典项解压缩到函数的命名参数中,所以只需添加参数:
{{form.field(data-provide =&#39; foo&#39;)}}
但是在该字段的任何必需参数之后这样做。 换句话说,为什么只要添加参数就可以解压缩字典呢?