Подтвердить что ты не робот

Как прокомментировать шаблон erb?

У меня есть тривиальная разметка, которая выглядит следующим образом:

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

Есть ли тривиальный способ прокомментировать это? Простое обтекание <!-- --> вокруг блока все равно оставит код ruby ​​доступным для шаблона. Это означает, что я должен отдельно комментировать код HTML и Ruby.

Какой лучший способ прокомментировать все три строки с наименьшим количеством разметки?

4b9b3361

Ответ 1

=begin и =end являются блочными комментариями Ruby.

Используя их в шаблоне erb:

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

Ответ 2

Вы можете комментировать блоки ERB с помощью #:

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

или избегать литерала HTML с использованием метода Rails content_tag:

<%#= content_tag :li, t'model.attr', :class=>:someclass %>

Ответ 3

Не работает:

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

Работает ли:

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

Ответ 4

Отредактировано, потому что я заметил истинное намерение вашего вопроса:

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

В каждом ярлыке синтаксиса, который я использовал (в основном, textmate), это должно быть в самом начале строки, вы не можете отступать, чтобы он отображался в комментариях. Я не знаю, было ли это правило или плохая реализация подсветки.