57

最近これを見て、面白いと思いました。しかし、私はそれが何をするのか本当に理解していませんか?

元。Railsアプリを持っていて、jsonをブートストラップしたいので、2回目のリクエストを行う必要はありません。通常、私はこのようなものを書きます。

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

メッセージを送信する必要があります。そうしrawないhtml_safeと、jsonがhtmlエスケープされ、正しく解析されません。ただし、これも機能するようです。

<%== @model.to_json %>

しかし、ドキュメントが見つかりません。

誰かがこれが正確に何をするのか知っていますか?html_safeつまり、それは呼び出しまたはとまったく同じrawですか?それともそれ以上のものがありますか?

4

2 に答える 2

70

<%==と同等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 %>
于 2012-10-30T15:49:04.500 に答える
11

Rails は実際には ERB の代わりにErubisを使用しており、ERB は他のさまざまなものをサポートしています。

<%==ただし、期待どおりです。エスケープされていない値を発行します

于 2012-10-30T15:40:39.313 に答える