Блок комментирует в шаблонах html.erb в направляющих

Как Вы комментируете HTML, смешанный с кодом Ruby?

some text <% ... %> more text <%= ... %>
something else
<% ... %>

В jsp это реально простой: <%-- ... --%>, но я не могу найти любую краткую опцию в направляющих.

Простые комментарии HTML <!-- ... --> не работайте: код Ruby все еще выполнен и ошибки воплей.

Существует опция использовать if false с комментариями HTML, но это является довольно подробным, не говоря уже о IDE не поддерживает его.

Существует также опция, прибывающая из чистого рубина, который удивительно работает.

<%
=begin %>
... html and ruby code goes here
<%
=end %>

Это прекрасно обычно, за исключением того, что это является подробным, странно выглядит и ни один из рубиновых IDE, которые я знаю, поддерживают его (да, мне нравится к comment/comment-out с одним нажатием клавиши).

Мне любопытно, там какой-либо 'чиновник' выполнения этого в направляющих?

Спасибо!

113
задан 2 revs 27 June 2010 в 17:20
поделиться

3 ответа

Я бы не считал это решением, но, возможно, заключить чанк между

<% if false %>
   ...
<% end %>

или, если вы чувствуете себя немного грязным, создать помощника, который просто ничего не выводит.

Мне это никогда не требовалось, но я споткнулся, что, похоже, нет готового решения для этого.

110
ответ дан 24 November 2019 в 02:39
поделиться

Вы должны помнить о том, где выполняется код. Комментарии в стиле Ruby работают потому, что код Ruby выполняется на сервере до того, как он будет передан веб-браузеру. Это также объясняет, почему HTML-комментарии не работают - Ruby уже был выполнен.

Не поддерживает ли используемая вами IDE создание пользовательских макросов для комментирования блоков кода?

.
1
ответ дан 24 November 2019 в 02:39
поделиться

Используйте это для комментирования отдельных строк:

<%# your_ruby_code %>

Для нескольких строк

<% 
=begin %>  <% ruby_code %>
<% 
=end %>

То, что вы сказали, будет работать.

156
ответ дан 24 November 2019 в 02:39
поделиться