Melhor maneira de adicionar comentários no erb

253

Como adicionamos comentários nos arquivos erb, se não queremos que eles sejam gerados no conteúdo html?

Kalyan Maddu
fonte

Respostas:

353

Use a <%# %>sequência, por exemplo

<%# This is a great comment! %>
John Douthat
fonte
Eu costumava usar este formato até que percebi que apenas levantou um erro no computador de alguém em minha equipe (ambos estávamos usando linux, mas diferentes distros), independentemente I evitá-lo desde ..
vise
4
É uma das poucas tags ERB suportadas. ruby-doc.org/stdlib/libdoc/erb/rdoc/classes/ERB.html Se não funcionasse no PC, eles cometeram um erro de digitação ou não estavam usando o ERB real. No entanto, eu tive problemas com códigos como este <% para foo no bar # loop over bar%> .. Isso foi bom no ERB que foi enviado com o 1.8.6, mas quando mudei para o 1.8.7, ele causou muitos problemas.
John Douthat 5/05
17
ou seja, não pode haver espaço entre <%e#
John Douthat
Como posso obter textmate para gerar estes estilo de comentários com Apple /
Michael
2
@Mike Ctrl + Shift + Period (ou seja, Ctrl + GreaterThan) 4 vezes rapidamente deve fazê-lo.
precisa saber é o seguinte
47

Para gravar

<%# This is a great comment! %>

<%#= This is a great comment! %>
Salil
fonte
4
O exemplo <%=-> <%#=é útil. Não requer um caso especial e não está documentado . Mas funciona e é o mais fácil! (Batidas ter que adivinhar se houve um =quando descomentando-lo.)
Benjamin Atkin
1
Qual a diferença entre os dois?
Travis Reeder #
3
@TravisR: O primeiro é apenas um comentário, o segundo também é apenas um comentário, mas provavelmente surge quando você está tentando desativar um <%= ... %>, transformando-o em um comentário.
mu é muito curto
28

Para comentários em bloco:

<% if false %>
    code to be commented out...
<% end %> 
Tim
fonte
2
Para blocos, você pode adicionar quebras de linha dentro da <%# %>tag.
RobW 07/07
1
Provavelmente ainda daria erros para códigos quebrados no comentário #
31417 Qwertie
6

Eu tenho uma instalação do Windows e essa sequência <% - #%> é a única que funciona para mim:

Exemplo:

<%-# This is a sample comment! %>
Edward Castaño
fonte
2

Como .erb é, por definição, "ruby incorporado", você pode incorporar todos os códigos ruby ​​entre: <%= e o outro :, %>normalmente todos escritos em uma linha. Além disso, os comentários de uma linha do ruby ​​começam sempre com #, portanto, o <%=# Comment %>estilo combina perfeitamente com os estilos de rubi puro e erb dos comentários de uma linha.

Maaaaaaarco
fonte
Isso não funciona <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>gera um erro
Epigene
@ Epigene A causa provável do erro são as aspas internas. Não sei por que você desejaria fazer isso, mas, para se livrar do erro, tente:value="<%=# 'String' %>"
jdigital
1

Eu não trabalho nos arquivos dos controladores, tive que colocá-lo entre barras

/ comente aqui .... /

Arezki
fonte
1

No meu editor de texto, eu corro command + /(atalho de texto sublime). Vai ser assim.

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

Não parece simples, mas funciona.

Miftah Mizwar
fonte