新手问题 Rails 4 escape html 代码段

rdongxie · October 31, 2014 · Last by zj0713001 replied at October 31, 2014 · 2289 hits

有一个 Model,有 2 个字段,一个字段内容是包含 html 代码,传递到 view 全部被转义了。 @student.body= "

123443215

"在页面上显示为:

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 %>

注意 xss 如果你的 body 内容是用户输入的 需要过滤白名单 不然就 alert('xss') 了

You need to Sign in before reply, if you don't have an account, please Sign up first.