Jinja在HTML中呈现文本,保留换行符

2024-05-20 04:08:16 发布

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

我有一个简单的表格:

class RecordForm(Form):    
    notes = TextAreaField('Notes')

我把数据分为三段记录如下:

para1

para2

para3

在模板中,我想以只读方式查看该记录的内容。(不可编辑表单)

记录在本例中是包含数据的模型:

<td>{{ record.notes }}</td>

-->

<td>para1 para2 para3</td>

我该怎么做才能显示多行呢?


Tags: 数据form模板方式记录class表格td
1条回答
网友
1楼 · 发布于 2024-05-20 04:08:16

所有的空白,包括换行符,在HTML中都变成一个空格。

你的选择,从最好到最坏:

  1. white-space: pre-wrap;放在包含元素上。这告诉HTML显示所有的空白,就像它在源代码中显示的一样,包括换行符。(您也可以使用<pre>标记,但这也将禁用单词包装,这可能是您不需要的。)
  2. 将纯文本视为标记,并向其抛出标记处理器Markdown所做的一件事是在<p>中包装段落。
  3. 在Python land中,执行.replace('\n', '<br>')。但这会使您容易受到XSS的攻击,因为字符串中可能有其他类似HTML的垃圾,修复这一问题有点麻烦。

相关问题 更多 >