WTForms 支持¶
bootstrap/wtf.html
模板包含了帮助你快速输出表单的宏。
Flask-WTF 不是Flask-Bootstrap的依赖,但是必须被正确的安装。
在最近的几个版本中, Flask-WTF 的API变化很大,Flask-Bootstrap目前为 Flask-WTF 的0.9.2版本开发。
最基本的方式是把它们作为手动创建表单的助手。
<form class="form form-horizontal" method="post" role="form">
{{ form.hidden_tag() }}
{{ wtf.form_errors(form, hiddens="only") }}
{{ wtf.form_field(form.field1) }}
{{ wtf.form_field(form.field2) }}
</form>
然而,你经常只是想快速生成一个表单,而且不需要过度的微调,可以直接使用 quick_form
宏:
{{ wtf.quick_form(form) }}
表单宏参考¶
-
quick_form
(form, action=".", method="post", extra_classes=None, role="form", form_type="basic", horizontal_columns=('lg', 2, 10), enctype=None, button_map={}, id="")¶ 为一个完整的 Flask-WTF 表单输出Bootstrap-markup。
参数: - form -- 要输出的表单类实例。
- method --
<form>
的method属性。 - extra_classes -- 添加到
<form>
的类。 - role --
<form>
的role属性. - form_type --
basic
,inline
或是horizontal
之一。 关于不同表单样式的具体内容,见 Bootstrap 文档。 - horizontal_columns -- 当使用水平定位的时候,像这样定位表单。必须是一个三元组:
(column-type, left-column-size, right-colum-size)
. - enctype --
<form>
的enctype属性。如果设为None
而且一个FileField
出现在表单里, 这个值会被自动设置为multipart/form-data
。 - button_map -- 一个匹配按钮样式的字典,匹配按钮字段名称到
primary
,danger
或是success
。 在button_map
里没有找到的按钮会使用default
类型(即btn btn-default
)。 - id --
<form>
的id属性。
-
form_errors
(form, hiddens=True)¶ 渲染包含表单错误消息的字段。这通常只用来输出隐藏字段表单的错误,因为其他的被附加到表单字段上了。
参数: - form -- 应该被渲染错误信息的表单。
- hiddens -- If 如果设为
True
,也渲染隐藏字段的错误。 如果设为'only'
, 只 渲染这些。
-
form_field
(field, form_type="basic", horizontal_columns=('lg', 2, 10), button_map={})¶ 渲染单个表单字段及周围的元素。主要通过
quick_form
使用。