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

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

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

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

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

<%== @model.to_json %>

但我找不到任何文件。

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

2 Solutions collect form web for “在rails erb中做什么<%==%>?”

<%==相当于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,它支持各种其他的东西。

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

  • 如何在Rails环境中运行一个Ruby文件?
  • Rails 3 - 加快控制台加载时间
  • 如何检查一个数字是否包含在一个范围内(在一个语句中)?
  • 如何暂时禁用Rack-Mini-Profiler?
  • (JSON :: ParserError)“{N}:在'alihack <%eval请求(\”alihack.com \“)%>
  • 更改Rails路由资源中:id参数的名称
  • Rails 3:我想列出在我的Rails应用程序中定义的所有path
  • Rails 3 - Bundler / Capistrano错误
  • 在Ruby on Rails中,要扩展String类,代码应该放在哪里?
  • 相同的Rails 4路由GET和POST请求
  • 如何获取单个列的值到数组中