Zamień liczbę całkowitą na ciąg znaków Jinja


122

Mam liczbę całkowitą

{% set curYear = 2013 %}

W {% if %}oświadczeniu muszę porównać to z jakimś ciągiem. Nie mogę ustawić curYearłańcucha na początku, ponieważ muszę go zmniejszać w pętli.

Jak mogę to przekonwertować?

Odpowiedzi:


225

Znalazłem odpowiedź.

Prześlij liczbę całkowitą na ciąg:

myOldIntValue|string

Prześlij ciąg na liczbę całkowitą:

myOldStrValue|int

Na jakiej stronie to znalazłeś?
Sergio

@Sergio heh, nie pamiętam, to było kilka lat temu :)
Glen Swift

3
Potwierdzono pracę nad nunjucks (opartym na jinja) na (e-mailu) kompilacjach HTML. Oto jak przekonwertować numeryczne wartości łańcuchowe na liczby całkowite. Przy okazji, w moim przypadku mam liczby całkowite jako ciągi pochodzące z plików zawartości JSON: "hero_title_img_w": "111"i "hero_title_img2_w": "222". Następnie dodaję je w pliku .NJK: {{ hero_title_img_w|int + hero_title_img2_w|int }}aby użyć jako widthatrybutu obrazu . Mam nadzieję, że pewnego dnia komuś pomoże.
pojawili się

1
Dla tych, którzy chcą dokumentów, jest to wbudowany filtr: jinja.palletsprojects.com/en/2.11.x/templates/#builtin-filters
Elias Dorneles

0

OP musiał rzucać jako ciąg poza {% set ... %}. Ale jeśli to nie Twój przypadek, możesz zrobić:

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

Zauważ, że potrzebujesz nawiasów w tym filtrze jinja.

Jeśli łączysz 2 zmienne, możesz również użyć ~ operatora niestandardowego .

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.