誰かがerbのタグ<%= %>
とタグの違いを教えてもらえますか? <% %>
どのような場合に、どちらを使用すればよいですか? 他に使用できるタグとその意味は?
質問する
114 次
3 に答える
6
言われるように
<% %>
内部の ruby コードを取得して評価します
<%= %>
内部の ruby コードを取得して評価し、結果を画面に出力します。これは通常、html で通常のテキストとして使用できる出力可能な結果を返すことを意味します。
そうやって
<div class="<% 'myclass' %>">
結果として
<div class="">
そして<div class="<%= 'myclass' %>">
結果として
<div class="myclass">
あなたはそれをさらに説明するこのrailscastを見ることができます http://railscasts.com/episodes/100-5-view-tips
また、おそらく将来これに遭遇し、私がこれを書いたことを忘れることさえあるでしょうが、とにかく役に立つかもしれません
場合によっては、Ruby コードのすべての行が <% %> の行である必要はありません。例 - ケーススイッチの使用
これは機能しません:
<% case my_var %>
<% when 10 %>
<% some ruby code %>
<% end %>
しかし、これは
<% case my_var
when 10 %>
<% some ruby code %>
<% end %>
だから気をつけて
于 2013-10-26T10:25:04.520 に答える
1
<%= %>
実行したルビを画面に出力したい場合に使用します。つまり、このブロック内に書かれたものはすべて出力画面に出力されます。
asブロックは、条件、ステートメントなど<% %>
の Ruby ロジック部分を実行するために使用されます。if
loop
于 2013-10-26T10:04:12.713 に答える
1
<% %>
括弧内の ruby コードを実行します。
<%= %>
何かをerbファイルに出力します。
于 2013-10-26T10:04:20.440 に答える