Django:从管理员将换行符存储到数据库并通过REST API返回它们

2024-04-26 03:47:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我创建了一个web应用程序,并使用django生成的管理员来插入一些数据。特别是,我有以下领域:

description = models.TextField(max_length=10000, null=True, blank=True)

在管理,它显示为一个文本区域,我可以插入新的空行。但是当我插入

Some text followed by a new emtpy line.

Some other text.

我在HTML页面中调用REST API得到的结果如下:

^{pr2}$

所以,一些空格出现在新行的位置。如果我去掉空行,只插入一个换行符,空行的数量就会减少。在

访问该字段的REST API返回以下内容:

Some text followed by a new emtpy line.\r\n\r\nSome other text.

如果描述正确地存储在数据库中,如何保存空行?在


Tags: djangotextrestapiwebtrue应用程序new
3条回答

可以通过为文本容器添加css指令来解决此问题:

white-space: pre-line;

使用autoescape和safe filter,它不仅适用于/n/r,还适用于其他richtext标记。在

我用了这样的方法:

   {% autoescape on %}
       <div>{{ description|safe }}</div>
   {% endautoescape %}

我用linebreaks解决了这个问题,它将把换行符转换成html中的br标记。 例如:

<p>{{ description | linebreaks}}</p>

相关问题 更多 >