LoginSignup
3
1

More than 5 years have passed since last update.

Rails-erbに<%%= %>こういう書き方あるみたい

Last updated at Posted at 2018-05-20

Rails erbの<%%= %>の意味

「eRuby テンプレートを生成するための eRuby テンプレート」を記述するのに使う
by @scivola さん

って感じみたいです!

$ bin/rails c
[1] pry(main)> ERB.new("<%%= 'hoge' %>").result
=> "<%= 'hoge' %>"
[2] pry(main)> ERB.new("<%= 'hoge' %>").result
=> "hoge"

<%%= %>はerbを一度展開しても、erbファイルが壊れないようにするためだったみたいです。弊社の開発ではCMSで、設定ファイルをユーザーごとのDBに一度いれたりしているので(適当な理解)何度か展開するみたいです〜

詳しい方はコメント欄にコメントください

scivolaさんがいい感じにまとめてくれたので引用しました!!!!

以下の内容はポエムです。

2週間前くらいにこんなくだりがありました。

私のコピペが発掘される

ことの発端はこうです。

私が意味を知らずに使っていた <%%= %> というイディオムを、別の人がPR出したときに話題になりました。。。

(意味わからずコピペしてたのは私だけで、PR出した人は知ってた)

「ふ〜ん。調べても出てこないし、なんかわかんないけど動いてるからこうしておかなきゃ。」

スクリーンショット 2018-05-19 1.20.16.png

で、今回やっとちゃんと調べました〜〜(エンジニアの風下)

参考資料

この記事を書いていたら erb に Lodash.js (or Underscode.js) の _.template を書くときのエスケープ - Qiita すでに投稿されてたのでこちら参考にするといいかもです!

こちらの<%%= %>が書かれた公式っぽいところはこちらが詳しいみたいです。 標準添付ライブラリ紹介 【第 10 回】 ERB

最後に

普段はコピペしてないですよ(?)

3
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1