在 view 里面,我是这样解析 markdown 的:
<p>
<%= render_markdown(post.description).html_safe %>
</p>
render_markdown
是一个 helper method
def render_markdown(text)
Redcarpet::Markdown.new(Redcarpet::Render::HTML).render(text)
end
但是,post.description 里面有用户输入的任何数据,如果用了 html_safe
是不是有安全隐患?如何较安全的解析 Markdown 呢。
P.S. 看了 RubyChina 的源码,但是没看懂。。。。