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

Тест escaped

Тест escaped применяется к значению в шаблоне Jinja и возвращает True, если значение уже экранировано, и False в противном случае. Обычно используется вместе с фильтром escape или тегом autoescape для проверки состояния безопасности строки.

Синтаксис

{{ value is escaped }}

Пример

Давайте проверим обычную строку, которая не была экранирована:

from flask import Flask, render_template app = Flask(__name__) @app.route('/') def index(): return render_template('index.html', text='abcde')

Шаблон для проверки:

<p>{{ text is escaped }}</p>

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

<p>False</p>

Пример

Давайте применим фильтр escape к строке и проверим результат:

<p>{{ '<b>hello</b>' | escape is escaped }}</p>

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

<p>True</p>

Пример

Давайте используем тест escaped вместе с условием if для вывода разного текста:

from flask import Flask, render_template app = Flask(__name__) @app.route('/') def index(): return render_template('index.html', text='<b>hello</b>')

Шаблон с проверкой:

{% if text is escaped %} <p>already escaped</p> {% else %} <p>{{ text | escape }}</p> {% endif %}

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

<p><b>hello</b></p>

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

  • тест defined,
    который проверяет определена ли переменная
  • тест string,
    который проверяет является ли значение строкой
  • фильтр escape,
    который экранирует HTML-символы в строке
  • фильтр safe,
    который помечает строку как безопасную
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить