2012-04-22 40 views
10

我有一個屬性的模型渲染,換行符在models.TextField()沒有模板

desc = models.TextField() 

我進入使用Django提供管理界面的數據,再後來看到我的模板在數據庫中的值被取出並顯示。

在我的管理界面中,我離開了換行(只是在我的段落之間留下空白行),但它們在我的模板中顯示爲單個段落。

我正在使用Django 1.3和MySQL。

回答

29

linebreaks

替換換行符與適當的HTML純文本;一個換行符變爲HTML換行符(<br />),並且一個新行後跟一個空行成爲一個段落符號(</p>)。

例如:

{{ value|linebreaks }}

+0

這適用於渲染,但如果您想保留javascript,輸入值或電子郵件的'\ n',該怎麼辦? – TheJKFever 2017-03-16 22:07:56

+0

嗨,我也在尋找相同的,我有一個模型與文本字段和相應的管理員類,我不知道在哪裏把這個?我們是否需要重寫html併爲其創建模板? – 2017-04-24 08:24:02

0

剛一說明,我是有換行顯示不出來,我意識到,當一個文本字段聲明爲只讀,文字是包裹着類似的問題HTML段落標記:

<p> text </p> 

相對於前標籤:

<pre> text </pre> 

Pre標籤保留新的行空格,所以如果你不使字段只讀,你會看到行空間。