3

我正在尝试这样做truncate raw(@some_text), length: 300。当文本超过 300 个字符的限制时,我会在文本中看到 html 标签。

我需要在文本中截断和实现 html(前置和附加的标签)属性。还有其他方法可以做到这一点吗?提前致谢。

4

4 回答 4

2

这应该可以正常工作(@some_text.slice(0,300))

于 2014-03-04T09:45:00.777 回答
1

您的问题是通过截断您将删除结束标签。如果您需要截断它,您基本上需要去除所有标签。

http://api.rubyonrails.org/classes/ActionView/Helpers/SanitizeHelper.html

于 2014-03-04T09:32:22.540 回答
0

试试这个从文本中截断和删除 html 标签....

截断(strip_tags(@some_text),:长度=> 300)

参考链接

于 2014-03-04T09:39:30.683 回答
0

这是我们用于此的代码:

#app/helpers/application_helper.rb
def clean(content, length)
    body = sanitize(content, tags: [])
    truncate(body, length: length, separator: " ")
end

如果将其放入助手中,则可以调用:clean(@some_text, "300")

于 2014-03-04T09:46:40.413 回答