Как передать html-css в блок в Django?

Ребят, привет.

Задача: Заполняю в админки джанго ячейку TextField, в которой указываю большой текст (около 2000 символов) и передаю это в шаблон через следующую команду:

{% block maincontent %}
{{ stepfieldst.main_text }}
{% endblock %}


Однако, мне нужно в тексте задать html-css разметку. Так как таких текстов будет много, то писать в самом шаблоне поля типа:

{% block maincontent %}
<h1>{{ stepfieldst.main_text_title }}</h1>
<p>{{ stepfieldst.main_text_filed}}<p>
# и так далее
{% endblock %}


Возможности нет.

Если пытаюсь сразу в TextField вставлять текст с html-разметки, получается вот такая штука:

259ff4ecc3b74fa29a6aba580c94c9dd.jpg

Почитал документацию, что-то там не было такого момента. Я знаю, что вопрос глупый, но у меня не получается найти решение.

Прошу направить на путь истинный.
  • Вопрос задан
  • 1084 просмотра
Решения вопроса 1
Если пытаюсь сразу в TextField вставлять текст с html-разметки, получается вот такая штука:

https://docs.djangoproject.com/en/1.9/ref/template...
При этом только нужно крайне хорошо понимать, что вы делаете и быть уверенными, что не получите инъекций.

по хорошому сначала избавить текст от всех подозрительных тегов https://github.com/mozilla/bleach, а потом уже safe по нему делать.

по интеграции джанги и bleach есть несколько решений, но непонятной "степени живости".
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы