我在編輯頁面視圖中的銀條紋後端中有textareaField ...要插入的文本包含換行符。如果我保存頁面,文本將正確顯示textareaField中的換行符。換行符可以正確保存到數據庫中。但是,如何在前端正確顯示文本?它總是在一行中沒有換行符輸出。內容中的銀條紋後端換行符不會顯示在前端中
我試過已經$ Text.RAW,$ Text.XML,...什麼都沒有用。
感謝您的幫助, 親切的問候, 弗洛裏安
我在編輯頁面視圖中的銀條紋後端中有textareaField ...要插入的文本包含換行符。如果我保存頁面,文本將正確顯示textareaField中的換行符。換行符可以正確保存到數據庫中。但是,如何在前端正確顯示文本?它總是在一行中沒有換行符輸出。內容中的銀條紋後端換行符不會顯示在前端中
我試過已經$ Text.RAW,$ Text.XML,...什麼都沒有用。
感謝您的幫助, 親切的問候, 弗洛裏安
假設您使用的是3.0,這是一個錯誤。你可以在這裏看到http://open.silverstripe.org/ticket/7596
解決方法是編寫你自己的函數,在你的文本字段中調用nl2br。
下面是一個例子:
public function NiceDescription() {
return (nl2br (Convert::raw2xml ($this->Description), true));
}
您可以替換「說明」與你的文字屬性的名稱。
然後在你的模板文件,如果你需要顯示的描述字段,你會調用該函數:
$NiceDescription
直觀地呈現在HTML中換行,你需要將它們轉換爲<BR>
標籤。 請參閱http://php.net/manual/de/function.nl2br.php
這個答案告訴您如何應用此格式如橫跨Silverstripe 3中的所有文本字段的數據擴展: http://stackoverflow.com/a/14517067/348485 – BaronGrivet 2013-12-23 19:39:43