Лучший способ добавить комментарии в эрб

253

Как добавить комментарии в erb-файлы, если мы не хотим, чтобы они создавались в html-содержимом?

Калян Мадду
источник

Ответы:

353

Используйте <%# %>последовательность, например

<%# This is a great comment! %>
Джон Даутат
источник
Я использовал этот формат до тех пор, пока не заметил, что он только что вызвал ошибку на чьем-то компьютере в моей команде (мы оба использовали linux, но разные дистрибутивы), несмотря на то, что я избегаю его с тех пор ...
тиски
4
Это один из немногих поддерживаемых тегов ERB. ruby-doc.org/stdlib/libdoc/erb/rdoc/classes/ERB.html Если это не сработало на их ПК, у них либо была опечатка, либо они не использовали настоящий ERB. Однако я столкнулся с проблемами с кодом, подобным этому <% для foo в bar # loop over bar%> .. Это было нормально в ERB, поставляемом с 1.8.6, но когда я переключился на 1.8.7, это вызвало много проблем.
Джон Даутат
17
то есть не должно быть пробела между <%и#
Джон Даут
Как я могу получить textmate для создания этих стилей комментариев с Apple- /
Майкл
2
@Mike Ctrl + Shift + Period (т.е. Ctrl + GreaterThan) 4 раза быстро должен это сделать.
Джон Даутат
47

Для записи

<%# This is a great comment! %>

<%#= This is a great comment! %>
Salil
источник
4
<%=-> <%#=пример полезен. Это не требует особого случая и не задокументировано . Это работает и является самым простым, хотя! (Бьет необходимость угадывать, было ли это, =когда раскомментировал его.)
Бенджамин Аткин
1
В чем разница между двумя?
Трэвис Ридер
3
@TravisR: первый - просто комментарий, второй - просто комментарий, но, вероятно, возникает, когда вы пытаетесь отключить <%= ... %>, превратив его в комментарий.
мю слишком коротка
28

Для блочных комментариев:

<% if false %>
    code to be commented out...
<% end %> 
Тим
источник
2
Для блоков вы можете просто добавить разрывы строк внутри <%# %>тега.
RobW
1
Вероятно, все еще будет давать ошибки за неработающий код в комментарии
Qwertie
6

У меня есть установка Windows, и эта последовательность <% - #%> единственная, которая работает для меня:

Пример:

<%-# This is a sample comment! %>
Эдвард Кастаньо
источник
2

Поскольку .erb по определению является «встроенным ruby», вы можете встраивать каждый код ruby ​​между: <%= и другими:, %>как правило, все они пишутся в одну строку. Кроме того, рубиновые однострочные комментарии начинаются всегда #, поэтому <%=# Comment %>стиль идеально подходит как для однострочных комментариев , так и для чистых ruby ​​и erb.

Maaaaaaarco
источник
Это не работает, <html> <body> <form method="POST" action="www.some-url.com"> <input id="data" name="data" value="<%=# "String" %>"> <input type="submit" value="Send"> </form> </body> </html>выдает ошибку
Epigene
@Epigene Вероятной причиной ошибки являются внутренние кавычки. Не уверен, почему вы хотите это сделать, но чтобы избавиться от ошибки, попробуйте:value="<%=# 'String' %>"
jdigital
1

Я не работаю в файлах контроллеров, я должен был поместить его между слешами

/ комментарий здесь .... /

Арезки
источник
1

В моем текстовом редакторе я бегу command + /(быстрый текст). Это будет так.

<%
=begin%>
    Here is the comment 
<%
=end%>

Это не выглядит просто, но это работает.

Мифтах Мизвар
источник