Преобразовать целое число в строку Jinja

122

У меня есть целое число

{% set curYear = 2013 %}

В {% if %}заявлении я должен сравнить его с некоторой строкой. Я не могу установить curYearстроку в начале, потому что мне нужно уменьшить ее в цикле.

Как его преобразовать?

Глен Свифт
источник

Ответы:

225

Я нашел ответ.

Преобразовать целое число в строку:

myOldIntValue|string

Преобразовать строку в целое число:

myOldStrValue|int
Глен Свифт
источник
На какой странице вы это нашли?
Серхио
@Sergio хех, я не помню, это было несколько лет назад :)
Глен Свифт
3
Подтверждено, что работает над nunjucks (который основан на jinja) в (по электронной почте) сборках HTML. Вот как преобразовать числовые строковые значения в целые числа. Кстати, в моем случае у меня есть целые числа в виде строк из файлов содержимого JSON: "hero_title_img_w": "111"и "hero_title_img2_w": "222". Затем я добавляю их в файл .NJK: {{ hero_title_img_w|int + hero_title_img2_w|int }}для использования в качестве widthатрибута изображения . Надеюсь, однажды это поможет кому-нибудь.
revelt
1
Для тех, кому нужна документация, это встроенный фильтр: jinja.palletsprojects.com/en/2.11.x/templates/#builtin-filters
Элиас
0

OP необходимо преобразовать в строку за пределами {% set ... %}. Но если это не ваш случай, вы можете:

{% set curYear = 2013 | string() %}

Обратите внимание, что вам нужны скобки на этом фильтре jinja.

Если вы объединяете две переменные, вы также можете использовать ~ специальный оператор .

louis_guitton
источник