Length of string in Jinja/Flask

wuxiekeji picture wuxiekeji · Jun 11, 2014 · Viewed 35.4k times · Source

Jinja unfortunately does not support executing arbitrary Python code, such as

{% if len(some_var)>1 %} ... {% endif %}

My current workaround is to use the deprecated, ugly, double-underscore method:

{% if some_var.__len__()>1 %} ... {% endif %}

Although this works, I'm afraid that some future implementation of strings might break this code. Is there a better way to do this?

Answer

Martijn Pieters picture Martijn Pieters · Jun 11, 2014

You can use the length filter:

{% if some_var|length > 1 %}