Django отображать текстовые поля - PullRequest
5 голосов
/ 21 ноября 2011

У меня есть форма с textfield s в Django, и пользователи вводят тексты построчно.Когда я смотрю на записи на стороне администратора, я точно вижу, как пользователь написал это, но когда я отображаю их на своем веб-сайте, в шаблонах Django, он просто объединяет предложения, и я больше не могу отображать текст построчно.

В качестве иллюстрации пользователь вводит текст как

-bla

-bla1

-bla2

Однако на моей странице это выглядит так:

-bla1-bla2-bla3

Это мой код в шаблоне:

<div>
   <p>
      {{ rev.myTextField }}
   </p>
</div>

Ответы [ 2 ]

16 голосов
/ 21 ноября 2011

В HTML новые строки между текстом не подразумевают новую строку в отображении;вам нужно использовать HTML для вставки новой строки.Наиболее простой способ - использовать тег <br />, хотя есть и другие методы.

Для этого в Django есть шаблонный фильтр: используйте |linebreaks. Вот документация .

Итак, измените:

{{ rev.myTextField }}

на:

{{ rev.myTextField|linebreaks }}
1 голос
/ 21 ноября 2011

Попробуйте "безопасный" тег

{{ rev.myTextField|safe }}
...