flask-bootstrap 中 form_field 定义中 `button_map` 的含义

meaning of `button_map` in the form_field definition in flask-bootstrap

我正在阅读 flask-boostrap doc 的文档。在 form_field 定义中,button_map 的目的是什么?

form_field(field, form_type="basic", horizontal_columns=('lg', 2, 10), button_map={})

根据您的link(参见quick_form):

button_map – A dictionary, mapping button field names to names such as primary, danger or success. Buttons not found in the button_map will use the default type of button.

这意味着如果你做了类似

的事情
form_field(submit_button, button_map={'submit_button': 'primary'})

你会得到一个类型为 primary 的按钮。

正如文档还提到的,form_field 主要由 quick_form 使用,其中映射比单个字段更有意义。

如果将表单呈现为 quick_form,则 'btn-primary' class 将添加到 'submit' 按钮。

{{ wtf.quick_form(form, button_map={'submit': 'primary'}) }}

在以上两个答案中,无论您在创建 Flask 表单时调用 SubmitField(即提交按钮)的名称与您在地图中使用的名称相同 例如

##WTForm

class CreatePostForm(FlaskForm):

 #some code here

    submit_button = SubmitField("Submit Post")

您的快速表单将是:

 {{wtf.quick_form(form, novalidate=True, button_map = {"submit_button":"primary"} )}}