Zio*_*ion 3 python flask flask-wtforms
形式:
class SignUpForm(Form):
username = TextField("Username: ",validators=[Required(),Length(3,24)])
Run Code Online (Sandbox Code Playgroud)
为什么这样做?
form = SignUpForm()
form.username(placeholder="username")
Run Code Online (Sandbox Code Playgroud)
但当您直接使用占位符作为SignUpForm?
class SignUpForm(Form):
username = TextField("Username: ",placeholder="username",validators=[Required(),Length(3,24)])
Run Code Online (Sandbox Code Playgroud)
它给出了这个错误 TypeError: __init__() got an unexpected keyword argument 'placeholder'
我对此有点困惑,因为直接在类上定义它应该与做一样,form.username(placeholder="username") 但为什么它会给出错误?
定义字段与渲染字段不同。 调用一个字段来呈现它接受任意关键字参数来向输入添加属性。 该库的设计初衷不是在定义字段时采用任意参数。
如果你想要一个快捷方式来渲染一个以标签为占位符的字段,你可以写一个 Jinja 宏。
{% macro form_field(field) %}
{{ field(placeholder=field.label.text) }}
{% endmacro %}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4004 次 |
| 最近记录: |