概要
RailsのViewでは、主にHTMLタグとERBコードを同時に使用することがあると思います。これら2つの記法には、それぞれ別々のコメントアウト方法があり、どのようにコメントアウトすれば良いか悩んでおりました。そこで、それぞれのコメントアウト方法とそれらを同時にコメントアウトする方法を、私なりに考え、それらを下記に記述させて頂きます。
HTMLのコメントアウト
まずは、基本のHTMLでコメントアウトするには、以下のように<!--
と-->
を使用します。
<!-- これはコメントです -->
この書き方で、<!--
と-->
の間にあるすべての内容がコメントアウトされます。
ERBのコメントアウト
一方、ERBのコードをコメントアウトするには、以下のように<%#
と%>
を使用します。
<%# これはコメントです %>
この書き方で、<%#
と%>
の間にあるERBコードがコメントアウトされます。
本題: HTMLタグとERBコードをまとめてコメントアウトする
等々本題ですが、HTMLタグとERBコードをまとめてコメントアウトする方法は、先述させて頂いた内容では、解決致しません。上記のHTMLのコメントはHTMLに、ERBのコメントはRubyコードにしか影響しないからです。
それでも、まとめて複数行をコメントアウトしたい場合、以下のような方法ができないかと考えました。
<%
=begin
%>
<!--
<div>
<p>This is some HTML</p>
<%= "And this is some Ruby code" %>
</div>
-->
<%
=end
%>
上記の例では、まずERBのコメントでRubyの複数行コメント(=begin
と=end
)を開始してからHTMLのコメントを開始します。そして、HTMLのコメントを終了した後にERBのコメントを終了しています。この方法でHTMLとERBのコードを一緒にコメントアウトすることができます。
しかし、この方法は少々面倒で、一般的にはHTMLとERBをそれぞれ個別にコメントアウトする方がより簡単でわかりやすいとされているようです。
まとめ
以上をもとに予期せぬエラーを防ぐためにも、それぞれ個別にコメントアウトすることが推奨されます。若干やりづらさを感じるかもしれませんが止む無しです。