作为概念证明,这里首先是一些控制台输出:
ruby-1.9.2-p180 :010 > x = "<span id='c_3'>s</span>"
=> "<span id='c_3'>s</span>"
ruby-1.9.2-p180 :011 > helper.simple_format(x)
=> "<p><span>s</span></p>"
原因是Rails辅助方法simple_format
在执行结束时调用sanitize
方法,该方法删除了属性。
我知道sanitize
将允许您指定不应剥离的属性。我的问题是:是否有可能通过simple_format以某种方式传递“white listed”属性(在本例中为id)?
谢谢!
答案 0 :(得分:5)
simple_format(x,{}, :sanitize => false)
答案 1 :(得分:1)
您无法传递白名单,但您可以通过
完全禁用清理simple_format(x, :sanitize => false)
http://api.rubyonrails.org/classes/ActionView/Helpers/TextHelper.html#method-i-simple_format