新手问题 Rails 4 escape html 代码段

rdongxie · 2014年10月31日 · 最后由 zj0713001 回复于 2014年10月31日 · 2289 次阅读

有一个 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') 了

需要 登录 后方可回复, 如果你还没有账号请 注册新账号