Meilleure façon d'ajouter des commentaires dans erb

253

Comment ajouter des commentaires dans des fichiers erb, si nous ne voulons pas qu'ils soient générés dans le contenu html?

Kalyan Maddu
la source

Réponses:

353

Utilisez la <%# %>séquence, par exemple

<%# This is a great comment! %>
John Douthat
la source
Je l' habitude d'utiliser ce format jusqu'à ce que je l' ai remarqué juste soulevé une erreur sur l' ordinateur de quelqu'un de mon équipe (nous étions tous deux en utilisant Linux, mais différentes distros), quel que je l' éviter depuis ..
étau
4
C'est l'une des rares balises ERB prises en charge. ruby-doc.org/stdlib/libdoc/erb/rdoc/classes/ERB.html Si cela ne fonctionnait pas sur leur PC, ils avaient soit une faute de frappe, soit ils n'utilisaient pas de véritable ERB. Cependant, j'ai rencontré des problèmes avec du code comme celui-ci <% for foo in bar # loop over bar%> .. C'était correct dans l'ERB livré avec 1.8.6, mais lorsque je suis passé à 1.8.7, cela a causé beaucoup de problèmes.
John Douthat
17
c'est-à-dire qu'il ne peut y avoir d'espace entre <%et#
John Douthat
Comment puis-je demander à textmate de générer ce style de commentaires avec apple- /
Michael
2
@Mike Ctrl + Maj + Période (c'est-à-dire Ctrl + GreaterThan) 4 fois rapidement devrait le faire.
John Douthat
47

Pour l'enregistrement

<%# This is a great comment! %>

<%#= This is a great comment! %>
Salil
la source
4
L' exemple <%=-> <%#=est utile. Il ne nécessite pas de cas particulier et n'est pas documenté . Cela fonctionne et est le plus simple, cependant! (Beats doit deviner s'il y en a eu un =en le commentant.)
Benjamin Atkin
1
Quelle est la différence entre les deux?
Travis Reeder
3
@TravisR: Le premier est juste un commentaire, le second est aussi juste un commentaire mais apparaît probablement lorsque vous essayez de désactiver un <%= ... %>en le transformant en commentaire.
mu est trop court du
28

Pour les commentaires de bloc:

<% if false %>
    code to be commented out...
<% end %> 
Tim
la source
2
Pour les blocs, vous pouvez simplement ajouter des sauts de ligne à l'intérieur de la <%# %>balise.
RobW
1
Donnerait probablement encore des erreurs pour le code cassé dans le commentaire
Qwertie
6

J'ai une configuration Windows et cette séquence <% - #%> est la seule qui fonctionne pour moi:

Exemple:

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

Étant donné que .erb est par définition "ruby incorporé", vous pouvez incorporer chaque code ruby ​​entre: <%= et l'autre :, %>généralement tous écrits sur une seule ligne. De plus, les commentaires d'une ligne ruby ​​commencent toujours par #, donc le <%=# Comment %>style correspond parfaitement aux styles rubis pur et erb pour les commentaires d'une ligne.

Maaaaaaarco
la source
Cela ne fonctionne pas <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>jette une erreur
Epigene
@Epigene La cause probable de l'erreur est les guillemets internes. Vous ne savez pas pourquoi vous souhaitez faire cela, mais pour vous débarrasser de l'erreur, essayez:value="<%=# 'String' %>"
jdigital
1

Je ne travaille pas dans les fichiers Contrôleurs, je devais le mettre entre les barres obliques

/ commentez ici .... /

Arezki
la source
1

Dans mon éditeur de texte, je lance command + / (raccourci texte sublime). Ce sera comme ça.

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

Ça n'a pas l'air simple, mais ça marche.

Miftah Mizwar
la source