← StartseiteProgrammierung (Програмування)

Was ist der Unterschied zwischen <%, <%=, <%# und -%> in ERB-Vorlagen (Ruby on Rails)?

Was ist der Unterschied zwischen <%, <%=, <%# und -%> in ERB-Vorlagen (Ruby on Rails)? Beispiele für Konstruktionen.

Dieser Inhalt wurde automatisch aus dem Ukrainischen übersetzt.
In ERB (Embedded Ruby, *.erb-Dateien) Vorlagen, die in Ruby on Rails verwendet werden, gibt es Tags, die verschiedene Arten von eingebettetem Code definieren: 
<%
<%=
<%#
-%>
Sie haben folgende Bedeutungen:
  • <% - dieses Tag wird verwendet, um Ruby-Code einzufügen, ohne das Ergebnis auszugeben. Es wird für Logik und bedingte Ausdrücke verwendet. Zum Beispiel können Sie es verwenden, um eine Schleife oder eine bedingte Anweisung zu erstellen, ohne das Ergebnis direkt auszugeben.
  • <%= - dieses Tag wird verwendet, um Ruby-Code mit Ausgabe des Ergebnisses einzufügen. Es wird verwendet, um den Wert einer Variablen oder das Ergebnis eines Ausdrucks direkt in den ausgegebenen HTML-Code einzufügen. Zum Beispiel können Sie es verwenden, um den Wert einer Variablen auf der Seite auszugeben.
  • <%# - dieses Tag wird verwendet, um Ruby-Code (ERB-Kommentar) bei der Ausführung der Vorlage zu ignorieren. Alles, was zwischen <%# und %> steht, wird ignoriert und nicht im ausgegebenen HTML-Code angezeigt. Dies ist nützlich, wenn Sie Kommentare hinterlassen oder einen bestimmten Teil des Codes vorübergehend deaktivieren möchten (während des Debuggens).
Beispiel:
<% if condition %>
  <%= variable %>
<% else %>
  <%# auskommentierter Teil %>
<% end -%>
  • -%> - Dieses Tag wird verwendet, um die Kontrolle über den Raum nach dem schließenden Tag zu gewährleisten. Es wird verwendet, um überflüssige Leerzeichen oder Zeilenumbrüche zu entfernen, die normalerweise nach dem Tag %> hinzugefügt werden. 
Beispiel:
 <% 1 + 1 -%>
gibt `2` aus, ohne ein Leerzeichen oder einen Zeilenumbruch danach hinzuzufügen.
Hinweise:
<% %>  : Führt Ruby-Code aus
<%= %> : Gibt den übergebenen Wert in der ERB-Vorlage aus
<% -%> : Entfernt Leerzeichen oder Zeilenumbrüche nach dem Ausdruck
<%# %> : Kommentierung des Codes

🔥 Weitere Beiträge

Alle Beiträge
Programmierung (Програмування)16. Mai '23, 20:02 Uhr

Was ist Origin in Git?

Was ist Origin in Git? Warum schreibt man origin in einem Git-Befehl? Wann und wozu sind Aliase i...

Programmierung (Програмування)23. Mai '23, 06:57 Uhr

Was ist Debugging?

Was ist Debugging?

Programmierung (Програмування)2. Jun '23, 12:53 Uhr

Was macht super in Ruby?

Was macht super in Ruby? Ein Beispiel für die Verwendung von super in Ruby-Methoden.