Content management system 内容中的silverstripe后端换行符不会显示在前端
我在编辑页面视图的Silverstripe后端有一个TextArea字段。。。要插入的文本包含换行符。如果我保存页面,文本将正确显示,并在TextArea字段中使用换行符。断线肯定会正确保存到数据库中。但是如何在前端正确显示文本?它总是在一行中输出,没有换行符 我已经试过$Text.RAW,$Text.XML,。。。什么都不管用 谢谢你的帮助, 亲切问候,,Content management system 内容中的silverstripe后端换行符不会显示在前端,content-management-system,silverstripe,Content Management System,Silverstripe,我在编辑页面视图的Silverstripe后端有一个TextArea字段。。。要插入的文本包含换行符。如果我保存页面,文本将正确显示,并在TextArea字段中使用换行符。断线肯定会正确保存到数据库中。但是如何在前端正确显示文本?它总是在一行中输出,没有换行符 我已经试过$Text.RAW,$Text.XML,。。。什么都不管用 谢谢你的帮助, 亲切问候,, Florian要在html中直观地呈现换行符,需要将它们转换为标记。 请参见假设您使用的是3.0,这是一个bug。你可以在这里看到 解决方
Florian要在html中直观地呈现换行符,需要将它们转换为
标记。
请参见假设您使用的是3.0,这是一个bug。你可以在这里看到 解决方法是在文本字段上编写自己的函数调用nl2br 以下是一个例子:
public function NiceDescription () {
return (nl2br (Convert::raw2xml ($this->Description), true));
}
您可以用文本属性的名称替换“Description”
然后在模板文件中,如果需要显示“描述”字段,您将调用该函数:
$NiceDescription
此答案向您展示了如何将此格式作为数据扩展应用于Silverstripe 3中的所有文本字段: