2016-12-09 3 views
1

Я использую склянок/Wtforms/jinja2, и я не уверен, если я понимаю, этот раздел из WTforms правильно:Можно ли использовать "{{field (class = ...)}}" в Jinja2?

Если кто-то хочет, чтобы пройти «класс» аргумент, который является зарезервированным ключевым словом в некоторые питона на основе языков шаблонные, можно сделать следующее:

form.field(class_="text_blob")

это ясно, что form.field(class_="text_blob") является безопасным для использования в качестве шаблона. Однако form.field(class="text_blob") работает для меня отлично.

Означает ли это, что class не зарезервирован в Jinja2, и мне не нужно заботиться? Или я должен исправить все class= до class_= во избежание возможных проблем?

ответ

1

Это правильно, class не зарезервированное слово в Jinja. Он все еще может использоваться как аргумент ключевого слова от **kwargs в Python, он просто не может быть написан в коде. Вот как WTForms поддерживает оба написания.

form.field(**{'class': 'text_blob'}) 
Смежные вопросы