11

次のような些細なマークアップがあります。

<li class="someclass">
  <=% t'model.attr' %>
</li>

それをコメントアウトする簡単な方法はありますか?ブロックをラップ<!-- -->するだけで、Rubyコードをテンプレートで使用できるようになります。これは、HTMLとRuby固有のコードを別々にコメントアウトする必要があることを意味します。

マークアップの量が最も少ない3行すべてをコメントアウトするための最良の方法は何ですか?

4

4 に答える 4

12

=begin=endはブロックコメントのRubyバージョンです。

erbテンプレートでそれらを使用する:

<%
=begin
%>
<li class="someclass">
  <=% t'model.attr' %>
</li>
<%
=end
%>
于 2010-08-06T18:38:48.067 に答える
10

次を使用してERBブロックにコメントできます#

<!-- <li class="someclass"> -->
  <%#= t'model.attr' %>
<!-- </li> -->

content_tagまたは、Railsメソッドを使用して文字通りのHTMLを回避します。

<%#= content_tag :li, t'model.attr', :class=>:someclass %>
于 2010-08-06T21:39:46.747 に答える
4

動作しません:

<%# <li class="someclass">
  <=% t'model.attr' %>
</li> %>

動作します:

<% if false %>
<li class="someclass">
  <=% t'model.attr' %>
</li>    
<% end %>
于 2010-08-06T18:41:20.167 に答える
0

あなたの質問の本当の意図に気づいたので編集しました:

<%
=begin
%>
<li class="someclass">
  <%= t'model.attr' %>
</li>
<%
=end
%>

私が使用したすべての構文ハイライト(主にtextmate)では、これは行の先頭にある必要があり、コメント付きで表示するためにインデントすることはできません。それがルールなのか、ハイライトの実装が不十分なのかはわかりません。

于 2010-08-06T18:39:50.263 に答える