在Rails中转义此HTML的正确方法

时间:2016-12-01 18:19:17

标签: html ruby-on-rails escaping

我正在向我的应用添加一个非常基本版本的Stackoverflow问题格式化系统。我已经达到了这个字符串:

的程度
_italic_ and **bold** and `@inline_code` and: \n    </code snippet>

变为:

<i>italic</i> and <b>bold</b> and <span class="block-code">@inline_code</span> and: <br/>
<span class="block-code"></code snippet></span>

显示此选项的正确和最安全的方法是什么,以便粗体,斜体和span标记都变为HTML标记,但其他标记显示为文本?

1 个答案:

答案 0 :(得分:0)

解决方案是交换HTML实体的&符号和小于符号......

string.gsub("&", "&amp;").gsub("<", "&lt;")

...然后将输出包装在<pre>标签中。