我正在使用Django进行开发,从数据库中检索一些包含换行符的文本.但是,当我使用模板标记将其渲染到模板时,它不会显示换行符.
有什么问题吗?
我正在使用Django进行开发,从数据库中检索一些包含换行符的文本.但是,当我使用模板标记将其渲染到模板时,它不会显示换行符.
有什么问题吗?
您必须记住,您的模板正在生成HTML.在HTML中,换行符只是另一个空格,它并不意味着将下面的文本放在新行上.有很多方法可以强制在HTML中添加新行.
您可以使用<pre>
标记来包装文本,以便HTML理解它是预格式化的:
<pre>{{value}}</pre>
您可以使用Django过滤器将纯文本换行符转换为HTML.linebreaks
将单个换行符转换为<br>
个标记,将双换行符转换为<p>
个标记.linebreaksbr
只会将换行符转换为<br>
个标记:
{{value|linebreaks}}
{{value|linebreaksbr}}
你可以试试这些,看看你更喜欢哪一个.
如果做不到这一点,您可以在视图中使用字符串操作,以更适合您的方式将纯文本转换为HTML.如果你想变得更高级,你可以编写自己的过滤,以你喜欢的方式转换,并在你的模板中使用它.
标记的情况下加入 HTML 中的段落