【发布时间】:2016-09-06 10:27:25
【问题描述】:
我有一个包含 html 文本的评论数据,我想显示没有任何标签的 html 渲染。
我正在与 RoR 和 slim 合作。
我试过sanitize、raw 和html_safe。但他们都给了我相同的结果。他们删除了一些 html,但我仍然看到 html 标签。
使用前的数据:
<img alt="User-added image" src="https://rrrrr;amp;feoid=00N2400000H7Rxb&amp;refid=0EM7E0000004FgN" style="height: 333px; width: 500px;"></img><br><br>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam
使用后的数据:
= raw resource.comments
= sanitize resource.comments
= strip_tags "'#{resource.comments}'"
= ActionView::Base.full_sanitizer.sanitize(resource.comments)
或
def formatted_comments
h.sanitize(comments, :tags => [], :attributes => [])
end
= formatted_comments
结果:
<img alt="User-added image" src="https://rrrrr;feoid=00N2400000H7Rxb&refid=0EM7E0000004FgN" style="height: 333px; width: 500px;"></img><br><br>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam
更新:
我注意到呈现的 html 标记包含以下内容。
" my result of html tags here " = $0
试图手动删除它,所有的 html 都被渲染了!
【问题讨论】:
标签: html ruby-on-rails slim-lang