概要
Railsで生成される.html.erbファイル中のスクリプト部分のコメントアウトについて。
たとえば以下のコードをコメントアウトする場合。
|
1 |
<%= 1 + 2 %> |
<!– —>は使えない
HTMLのコメントアウトでは実行を抑止できない。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
<!--<%= 1 + 2 %>--> HTMLソース <!--3--> <!-- <%= 1 + 2 %> --> HTMLソース <!-- 3 --> |
#~1行コメント
Rubyの#で1行をコメントアウトできる。HTMLソース中には表示されない。
スクリプトタグの中でコメントアウトする場合、既存の<%の後ろに#を追加。
|
1 |
<%#= 1 + 2 %> |
スクリプトタグの外でコメントアウトする場合、先頭に<%#を追加。この場合は最初に%>が現れるまでの内容がコメントになるので、末尾に%>を追加しなくてもよい。コメントアウトを戻すときも先頭の<%#だけを削除。
|
1 |
<%# <%= 1 + 2 %> |
=begin…=end~複数行コメント
Rubyの=begin...=endによる複数行コメントを使う。=begin、=endとも行頭になければならない。
ファイルの末尾でエラーが出ることがあり、見栄え・打ち込みやすさの点からあまりよろしくない。
|
1 2 3 4 5 |
<% =begin %> <%= 1 + 2 %> <% =end %> |
<% if false %>…<% end %>
falseで実行されないifクローズで該当する部分を囲む方法。
直感的にコメントだと認識し難いのが難点。
空のメソッドで囲む方法
共通で参照可能な場所に以下のような関数を定義する。
|
1 2 |
def comment end |
そしてコメントアウトしたい部分を関数で囲む。
|
1 2 3 |
<% comment do %> コメントアウトするブロック <% end %> |