サーチ…


前書き

ERBはEmbedded Rubyの略で、HTMLやYAMLなどのテンプレート内にRuby変数を挿入するために使用されます。 ERBは、テキストを受け取り、ERBマークアップで囲まれたRubyコードを評価して置き換えるRubyクラスです。

構文

  • <%number = rand(10)%>このコードは評価されます
  • <%= number%>このコードは評価され、出力に挿入されます
  • <%#comment text%>このコメントは評価されません

備考

コンベンション:

  • ERBをテンプレートとして:ビジネスロジックをヘルパーコードに変換し、ERBテンプレートをRubyの知識のない人にもわかりやすく読みやすいようにします。
  • .erbファイルを.erb :例: .js.erb.html.erb.css.erbなど

ERBの解析

この例は、 IRBセッションのフィルタリングされたテキストです。

=> require 'erb'
=> input = <<-HEREDOC
<ul>
<% (0..10).each do |i| %>
    <%# This is a comment %>
    <li><%= i %> is <%= i.even? ? 'even' : 'odd' %>.</li>
<% end %>
</ul>
HEREDOC

=> parser = ERB.new(input)
=> output = parser.result
=> print output
<ul>


    <li>0 is even.</li>


    <li>1 is odd.</li>


    <li>2 is even.</li>


    <li>3 is odd.</li>


    <li>4 is even.</li>


    <li>5 is odd.</li>


    <li>6 is even.</li>


    <li>7 is odd.</li>


    <li>8 is even.</li>


    <li>9 is odd.</li>


    <li>10 is even.</li>

</ul>


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow