防止文本区域中的HTML转义

时间:2013-03-30 23:09:03

标签: ruby-on-rails forms security html-escape-characters

意识到如果我将HTML代码放在rails文本区域中,它将输出html。

例如:

<b> Hello </b>

输出为:

你好

我认为rails 3文本输入会自动转义HTML,但每当我输出@variable.textarea时,它仍会显示粗体文本。是否选择输入什么HTML?当我输出textarea的内容时,如何确保所有HTML总是逃脱?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果<b>hello</b>显示为 hello ,则表示HTML转义已被阻止。

由于您不希望用户在其输入中使用HTML,因此您希望转义HTML,以便<b>hello</b><b>hello</b>形式出现。

在Rails 3应用中,html会自动转义 - 但您可以使用h method显式转义它:

<%= h my_string %>