Rendering html header attributes with Flask-WTForms field description

I use the render_field macro presented on the Flask-WFT Documentation Page page to render fields in long forms in different templates.

The field is defined in this way.

year_built = IntegerField(label='Year Built', 
             description='Year built, not the year of a major renovation.',
             validators=[validators.NumberRange(
                                    min=1700,  
                                    max=2012, 
                                    message="Between %(min)s and %(max)s")])

The macro is as follows:

{% macro render_field(field) %}
  <dt>{{ field.label }}
  <dd>{{ field(**kwargs)|safe }}
  {% if field.errors %}
    <ul class=errors>
    {% for error in field.errors %}
      <li>{{ error }}</li>
    {% endfor %}
    </ul>
  {% endif %}
  </dd>
{% endmacro %}

In the forms themselves, individual fields are placed using ...

{{ render_field(form.year_built, class="input text")}}

, , - , HTML field(**kwargs). , render_field, 100 form.py, title.html, . , , .

kwargs field()?

+5
1

, ...

{% macro render_field(field) %}
  <dt>{{ field.label }}
  <dd>{{ field(title=field.description, **kwargs)|safe }}
  {% if field.errors %}
    <ul class=errors>
    {% for error in field.errors %}
      <li>{{ error }}</li>
    {% endfor %}
    </ul>
  {% endif %}
  </dd>
{% endmacro %}
+8

All Articles