Ruby on rails 截断&;RubyonRails中的简单格式字符串
我试图获取一个字符串,并以简单的_格式呈现它,同时截断它。当我只使用一个或另一个时,它就起作用了,但当我同时使用两个时,它就不起作用了。为什么不同时执行简单的_格式和截断呢 控制器Ruby on rails 截断&;RubyonRails中的简单格式字符串,ruby-on-rails,ruby,ruby-on-rails-4,Ruby On Rails,Ruby,Ruby On Rails 4,我试图获取一个字符串,并以简单的_格式呈现它,同时截断它。当我只使用一个或另一个时,它就起作用了,但当我同时使用两个时,它就不起作用了。为什么不同时执行简单的_格式和截断呢 控制器 myString = "Apple’s New Laptop" 查看 <%= simple_format truncate( myString, :length => 20 ) %> 20)%> Rails 4中的truncate辅助程序发生了一些更改。 文件确实告诉我们:
myString = "Apple’s New Laptop"
查看
<%= simple_format truncate( myString, :length => 20 ) %>
20)%>
Rails 4中的truncate辅助程序发生了一些更改。
文件确实告诉我们:
结果标记为HTML安全,但默认情况下会转义,除非:escape为false
Rails通常会转义所有字符串。如果您只想在代码中的字符串中放入一些unicode字符,可以使用十六进制代码的\u表示法。然后truncate也会将该字符计算为一个字符
myString = "Apple\u2019s New Laptop"
方法是在字符串上使用了
simple\u格式之后截断。由于truncate默认情况下会转义字符串,因此必须使用escape:false
选项
> myString = "Apple’s New Laptop"
> truncate(simple_format(myString), escape: false)
> => "<p>Apple’s New Laptop..."
> truncate(simple_format(myString), escape: false, length: 19)
> => "<p>Apple’s..."
myString=“苹果的新笔记本电脑”
>截断(简单_格式(myString),转义:false)
>=>“苹果公司的新笔记本电脑…”
>截断(简单_格式(myString),转义:false,长度:19)
>=>“Apple’;s…”
例如,这可能会通过剪切
来创建不平衡的HTML标记,因此请小心使用。这可能很晚,但对其他人有用。这对我有用
<%= truncate(myString, escape: false, length: 20 ) %>
对我来说很好。在你看来,输出是什么?我仍然得到“苹果&8217;的新笔记本电脑”它是否真的以苹果&#8217;s的新笔记本电脑
在页面上?是的。除了截断正在工作外,完全没有更改。您希望为示例设置什么?警告:此解决方案可以通过截断尾部的来创建不平衡的标记