Возникла небольшая проблема. На странице HTML, я вывожу предупреждение(alert). Делаю следующим образом в коде программы
flash('<strong>'+form.username.data+'</strong> успешно зарегистрирован!')
На html странице это
{% with messages = get_flashed_messages() %}
{% if messages %}
{% for message in messages %}
<div class="alert alert-info" role="alert"><span>{{ message }}</span></div>
{% endfor %}
{% endif %}
{% endwith %}
Хочу чтобы было: Иванов успешно зарегистрирован!
Сейчас же выходит <strong>Иванов</strong> успешно зарегистрирован!
Есть возможность активизировать тэг <strong>?
Чтобы теги не экранировались, нужно отключить автоэкранирование.
Для достижения этого есть три способа:
1)В коде Python обернуть строку HTML в объект Markup перед передачей в шаблон. Это рекомендуемый способ.
2)Внутри шаблона, воспользовавшись фильтром |safe для явной отметки строки, как безопасного HTML ({{ myvariable|safe }})
3)Временно отключить систему автоэкранирования.
Для отключения системы автоэкранирования в шаблонах можно воспользоваться блоком {% autoescape %}:
Пример
{% with messages = get_flashed_messages() %}
{% if messages %}
{% for message in messages %}
{% autoescape false %}
<div class="alert alert-info" role="alert"><span>{{ message }}</span></div>
{% endautoescape %}
{% endfor %}
{% endif %}
{% endwith %}
Продвижение своими сайтами как стратегия роста и независимости