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

mwo*_*s79 49 ruby ruby-on-rails erb ruby-on-rails-3

我最近看到这个,认为它很有趣.但我真的不明白它的作用?

防爆.我有一个rails应用程序,我想引导一些json,所以我不必再发出第二个请求.通常我会写这样的东西.

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

我必须发送消息raw或者html_safejson将被html转义,因此无法正确解析.但是,这似乎也有效.

<%== @model.to_json %>

但我找不到任何文件.

有谁知道这究竟是什么?即它是否与呼叫完全相同html_saferaw?或者还有更多吗?

Ste*_*fan 57

<%==相当于raw.

Ruby on Rails指南:

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

<%= raw @cms.current_template %> <%# inserts @cms.current_template as is %>
Run Code Online (Sandbox Code Playgroud)

或者,等效地,使用<%==:

<%== @cms.current_template %> <%# inserts @cms.current_template as is %>
Run Code Online (Sandbox Code Playgroud)


Nev*_*vir 11

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

<%==正如你所期望的那样:它发出未转义的价值