Beste Weg, um Kommentare in erb hinzuzufügen


253

Wie fügen wir Kommentare in erb-Dateien hinzu, wenn wir nicht möchten, dass sie in den HTML-Inhalt generiert werden?

Antworten:


353

Verwenden Sie die <%# %>Sequenz, z

<%# This is a great comment! %>

Ich verwendet , um dieses Format zu verwenden , bis ich merkte , es erhöht nur einen Fehler auf someones Computer in meinem Team (wir waren beide mit Linux, aber verschiedene Distributionen), und zwar unabhängig vermeide ich es seit ..
Schraubstock

4
Es ist eines der wenigen unterstützten ERB-Tags. ruby-doc.org/stdlib/libdoc/erb/rdoc/classes/ERB.html Wenn es auf ihrem PC nicht funktionierte, hatten sie entweder einen Tippfehler oder sie verwendeten keinen echten ERB. Ich habe jedoch Probleme mit Code wie diesem <% für foo in bar # Schleife über bar%>. Dies war in der ERB, die mit 1.8.6 ausgeliefert wurde, in Ordnung, aber als ich zu 1.8.7 wechselte, verursachte dies viele Probleme.
John Douthat

17
dh es kann kein Leerzeichen zwischen <%und#
John Douthat

Wie kann ich textmate dazu bringen, diese Art von Kommentaren mit apple- /
Michael

2
@Mike Strg + Umschalt + Punkt (dh Strg + Größer als) 4 mal schnell sollte es tun.
John Douthat

47

Für die Aufzeichnung

<%# This is a great comment! %>

<%#= This is a great comment! %>

4
Das Beispiel <%=-> <%#=ist nützlich. Es erfordert keinen Sonderfall und ist nicht dokumentiert . Es funktioniert und ist am einfachsten! (Beats müssen raten, ob es eine gab, =als sie es auskommentierte.)
Benjamin Atkin

1
Was ist der Unterschied zwischen den beiden?
Travis Reeder

3
@TravisR: Der erste ist nur ein Kommentar, der zweite ist ebenfalls nur ein Kommentar, tritt aber wahrscheinlich auf, wenn Sie versuchen, einen zu deaktivieren, <%= ... %>indem Sie ihn in einen Kommentar umwandeln.
Mu ist zu kurz

28

Für Blockkommentare:

<% if false %>
    code to be commented out...
<% end %> 

2
Für Blöcke können Sie einfach Zeilenumbrüche innerhalb des <%# %>Tags hinzufügen .
RobW

1
Würde wahrscheinlich immer noch Fehler für defekten Code im Kommentar geben
Qwertie

6

Ich habe ein Windows-Setup und diese <% - #%> -Sequenz ist die einzige, die für mich funktioniert:

Beispiel:

<%-# This is a sample comment! %>

2

Da .erb per Definition "eingebetteter Ruby" ist, können Sie jeden Ruby-Code zwischen: <%= und dem anderen: einbetten %>, normalerweise alle in einer Zeile. Darüber hinaus beginnen einzeilige Ruby-Kommentare immer mit #, sodass der <%=# Comment %>Stil perfekt zu reinen Ruby- und erb-Stilen für einzeilige Kommentare passt.


Dies funktioniert nicht <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>wirft einen Fehler
Epigene

@Epigene Die wahrscheinliche Ursache des Fehlers sind die inneren Anführungszeichen. Sie sind sich nicht sicher, warum Sie dies tun möchten, aber um den Fehler zu value="<%=# 'String' %>"
beseitigen

1

Ich arbeite nicht in den Controller-Dateien, ich musste es zwischen Schrägstriche setzen

/ Kommentar hier .... /


1

In meinem Texteditor starte ich command + /(Sublime-Text-Verknüpfung). Es wird so sein.

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

Es sieht nicht einfach aus, aber es funktioniert.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.