6

使用生成表单对我来说非常方便,但是,我在他们的文档quick_form Flask-Bootstrap中找不到可以根据模板主题的要求添加额外类的方法。label

我的 forms.py 类如下所示:

from flask_wtf import Form
from wtforms import StringField,PasswordField,TextField,SubmitField
from wtforms.validators import InputRequired,EqualTo,Email,ValidationError

class Building_Form(Form):
    BuildingName = TextField('Building Name')
    BuildingType = TextField('Building Type')
    FloorNums    = TextField('Numers of Floor')
    BuildUnits   = TextField('Units in Building')
    BuildSize    = TextField('Building Size')
    BuiltYear    = TextField('Built in (year)')
    BuildOpeningTime = TextField('Open Time')
    BuildClosingTime = TextField('Close Time')

我的routes.py如下所示:

from app.import_core import *
from flask_wtf import FlaskForm
from wtforms import Form, BooleanField, StringField, PasswordField, validators
from wtforms.validators import DataRequired
from flask_wtf.file import FileField, FileRequired
from werkzeug.utils import secure_filename
from werkzeug.security import generate_password_hash, check_password_hash


from .forms import Building_Form
# from app.user.models import TBL_USER

import pdb

@app.route('/building')
def show_building_listing():

    return render_template('building_listing.html')

@app.route('/builing/new',methods=['GET','POST'])
def add_new_builing():
    form = Building_Form()
    if request.method=='POST':
        return '<h1>Ok Building added</h1>'

    return render_template('new_building.html',form=form)

new_building.html要呈现一个表格:

{% extends "__dashboard.html" %}
{% import "bootstrap/wtf.html" as wtf %}

{% block include_css %}
  <link rel="stylesheet" href="{{url_for('static',filename='css/login.css')}}">
  <link rel="stylesheet" href="{{url_for('static',filename='css/bt-social-button/bootstrap-social.css')}}">
{% endblock %}

{% block content %}

  <div class="card">
    <div class="card-body">
      {{ wtf.quick_form(form, extra_classes='bmd-label-floating') }}
    </div>
  </div>
{% endblock %}

我想将类添加bmd-label-floating到我的表单标签中,但最终却使用了这些类<form>

如何添加该类我的标签?谢谢。

4

1 回答 1

5

我有一个类似的问题。项目列表用于生成带有多个复选框的表单。我需要添加一个标签类来水平设置它们的样式。我能够遍历我的表单对象并更改表单的类field.label

<form action="" method="post">

{% with test = form.example %}
{% for field in test %}
    {{ field.label(class_='checkbox-inline') }}
    {{ field }}
{% endfor %}
{% endwith %}

<p>{{ form.submit() }}</p>
</form>
于 2018-06-05T23:55:52.697 回答