我在尝试将我们的一方升级到Rails 3时正在阅读Katz的Safe Buffer文章。我们有很多帮助者从我们知道安全的数据中构建相当复杂的html / css位(我们正在做的事情)像大菜单)。
不幸的是 - 如果我正在阅读Katz的文章 - 似乎你需要标记所有内容html_safe或者你被转义。
我想知道是否有人想出一个简单的黑客来在模块/方法/块级别上关闭此功能呢?我正在查看Rails中的代码来执行此操作,它看起来并不简单。
答案 0 :(得分:1)
我相信你有几个“简单”的解决方案:
html_safe
'd string alias
将它们别名为_unsafe_helper_name
,然后让helper_name
返回_unsafe_helper_name.html_safe
raw
方法。在输出上调用raw
会关闭Rails 3的内置保护并输出字符串,而不会转义。