РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
223 of 643 menu

Функция joiner

Функция joiner доступна внутри шаблонов Jinja и возвращает специальный объект-разделитель. При каждом вызове этого объекта возвращается пустая строка, кроме первого вызова, когда возвращается строка, переданная параметром. Чаще всего joiner применяется в циклах для вставки разделителя между элементами. Первым параметром передаётся строка-разделитель, которая будет возвращена при первом вызове.

Синтаксис

{% set sep = joiner(separator) %} {{ sep() }}

Пример

Давайте выведем элементы массива через запятую, используя функцию joiner:

from flask import Flask, render_template app = Flask(__name__) @app.route('/') def index(): arr = ['a', 'b', 'c', 'd', 'e'] return render_template('index.html', arr=arr)

Шаблон для вывода элементов:

{% set comma = joiner(', ') %} {% for elem in arr %} {{ comma() }}{{ elem }} {% endfor %}

Результат выполнения кода:

a, b, c, d, e

Пример

Давайте используем joiner для вывода тегов <br> между элементами массива:

from flask import Flask, render_template app = Flask(__name__) @app.route('/') def index(): arr = ['user', 'article', 'hello'] return render_template('index.html', arr=arr)

Шаблон с разделителем-тегом:

{% set br = joiner('<br>') %} {% for elem in arr %} {{ br()|safe }}{{ elem }} {% endfor %}

Результат выполнения кода:

user<br>article<br>hello

Смотрите также

  • тег for,
    который перебирает элементы в цикле
  • тег set,
    который создаёт переменную в шаблоне
  • фильтр join,
    который объединяет элементы массива в строку
  • функцию cycler,
    которая по кругу перебирает значения
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить