在rails erb中做什么<%==%>?

我最近看到这个,觉得很有意思。 但我真的不明白它是什么?

防爆。 我有一个Rails应用程序,我想引导一些JSON,所以我不必再提出第二个要求。 通常我会写这样的东西。

<%= raw @model.to_json %><%= @model.to_json.html_safe %>

我必须发送消息rawhtml_safe或json将html转义,因此不正确parsing。 但是,这似乎也工作。

<%== @model.to_json %>

但我找不到任何文件。

有谁知道这是做什么? 即它是一样的调用html_saferaw ? 还是有更多的呢?

<%==相当于raw

从Ruby on Rails指南 :

要逐字插入某些内容,请使用raw帮助程序而不是调用html_safe

 <%= raw @cms.current_template %> <%# inserts @cms.current_template as is %> 

或者等价地使用<%==

 <%== @cms.current_template %> <%# inserts @cms.current_template as is %> 

实际上,Rails使用Erubis,而不是ERB,它支持各种其他的东西。

<%==与您所期望的完全相同: 它会释放未经转义的值