Отрисовка атрибутов заголовка html с помощью Flask -Описание поля WTForms

Я использую макрос поля рендеринга _, представленный на странице документации Flask -WFT , для рендеринга полей в длинных формах в разных шаблонах.

Поле определяется следующим образом

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")])

Макрос выглядит так...

{% macro render_field(field) %}
  
{{ field.label }}
{{ field(**kwargs)|safe }} {% if field.errors %}
    {% for error in field.errors %}
  • {{ error }}
  • {% endfor %}
{% endif %}
{% endmacro %}

В самих формах отдельные поля размещаются с помощью...

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

Чего я не могу понять, так это способа использования описания в объекте поля в той части макроса, которая создает поле HTML field(**kwargs). Я знаю, что могу передавать ключевые слова в функцию поля рендеринга _, но я имею дело с формами с более чем 100 полями и устанавливаю описание в form.py, а затем снова устанавливаю его как ключевое слово title в template.html. как ненужное пресыщение. Я бы очень хотел использовать макрос для отображения описания в качестве заголовка, если он есть, или просто отображать поле без заголовка, если его нет.

Есть ли способ добавить новые записи в kwargsдо запуска функции поля ()?

6
задан dnfehren 16 August 2012 в 21:57
поделиться