我正在尝试将我正在使用的Jinja模板中的字符串转换为大写字母。
在template documentation中,我读到了:
upper(s)
Convert a value to uppercase.
所以我写了这段代码:
{% if student.departament == "Academy" %}
Academy
{% elif upper(student.department) != "MATHS DEPARTMENT" %}
Maths department
{% endif %}
但是我收到了这个错误:
UndefinedError: 'upper' is undefined
那么,如何在Jinja2中将字符串转换为大写?
答案 0 :(得分:60)
过滤器与|filter
syntax:
{% elif student.department|upper != "MATHS DEPARTMENT" %}
Maths department
{% endif %}
或者您可以使用str.upper()
method:
{% elif student.department.upper() != "MATHS DEPARTMENT" %}
Maths department
{% endif %}
Jinja语法是Python- ,如,而非实际的Python。 : - )
答案 1 :(得分:12)
大写
{{ 'helLo WOrlD'|capitalize }}
输出
Hello world
大写
{{ 'helLo WOrlD'|upper }}
输出
HELLO WORLD
答案 2 :(得分:6)
对于大写
{{ 'helLo WOrlD'|capfirst }}
对于大写
{{ 'helLo WOrlD'|upper }}
对于小写
{{ 'helLo WOrlD'|lower }}
对于标题
{{ 'helLo WOrlD'|title }}
为了ljust
{{ 'helLo WOrlD'|ljust }}
对于rjust
{{ 'helLo WOrlD'|rjust }}
对于包裹
{{ 'helLo WOrlD'|wrap }}
希望能帮到你
答案 3 :(得分:3)
你可以使用:像这样过滤
{% filter upper %}
UPPERCASE
{% endfilter %}