有一个 Model,有 2 个字段,一个字段内容是包含 html 代码,传递到 view 全部被转义了。 @student.body= "
123443215
"在页面上显示为:
,如何显示为:123443215?
你的意思是将 html 代码的中的 text 取出来?
加载 Nokogiri 这个 gem, 然后:
@body_text = Nokogiri::HTML(@student.body).text # 使用 @body_text 在 view 中即可.
#1 楼 @lyfi2003 不是提取 text,返回的 body 被转义成:
lt;p>123443215</p>
了,想不要被转义。
解决了:<%=raw @student.body %>
@rdongxie http://api.rubyonrails.org/classes/ActionView/Helpers/SanitizeHelper.html
试试
sanitize @student.body
注意 xss 如果你的 body 内容是用户输入的 需要过滤白名单 不然就 alert('xss') 了