我为我的Rails应用程序提供了一个帮助器方法,它为Google Groups订阅表单返回一个带有HTML代码的字符串。不幸的是,它以纯文本的形式出现在页面上。如何才能强制将其呈现为HTML?提前谢谢。
发布于 2011-01-28 04:29:13
在Rails3中,你的助手的结果需要被标记为"html_safe“,否则,标签将被转义。
def my_helper
data = "<p>Hello!</p>"
data.html_safe
end
发布于 2011-01-28 04:31:23
我认为这是Rails html sanitize的问题。来自rails changelog
你不再需要调用h(字符串)来转义
输出,它在所有视图模板中都是默认开启的。如果需要未转义的字符串,请调用raw( string )。
试试看
发布于 2014-01-17 00:44:20
当像这样连接多个字符串时,需要注意的一件事是
def custom_check_box(checked)
'<span class="my-custom-checkbox '+( checked ? 'checked' : '')+'"></span>'.html_safe
end
在这种情况下,只有最后一部分被标记为html安全。确保你得到了所有的东西。
def custom_check_box(checked)
('<span class="my-custom-checkbox '+( checked ? 'checked' : '')+'"></span>').html_safe
end
https://stackoverflow.com/questions/4821435
复制相似问题