ERuby

ERuby

ERuby
eRuby (erb)
Dateiendung: .erb, .html.erb, .xml.erb
Aktuelle Version 1.3.0
(2008-11-08)
Art: Auszeichnungssprache
modruby.net/en/index.rbx/eruby/whatis.html (Memento vom 4. November 2012 im Internet Archive)

eRuby ist eine Templatesprache, die es ermöglicht, Ruby in eine Textdatei einzubetten. eRuby wird häufig dafür verwendet, um Ruby-Code in ein HTML-Dokument zu integrieren, ähnlich wie bei ASP, JSP oder PHP. eRuby ist für dieselben Plattformen verfügbar, für die es auch Ruby gibt, und es steht unter den Lizenzen GPL und LGPL zur Verfügung.

Verwendung

eRuby erlaubt es, Ruby-Code zwischen einem Paar von <% und %> oder <%= und %>einzufügen. Diese eingebetteten Codeblöcke werden ausgeführt. Bei <% %> wird anschließend der Block durch die leere Zeichenkette ersetzt. Dies wird vor allem für Schleifenkonstrukte, aber auch für if-then-else-Bedingungen oder für das Setzen von später verwendeten Variablen verwendet. Bei <%= %> wird das Ergebnis des eingeschlossenen Ausdrucks eingefügt.

Hier sind ein paar Beispiele für die Verwendung von eRuby:

Eine Zeile Ruby

<% ruby code %>

Ausgabe von „Hallo“: <% puts "Hallo" %>

Alternativ werden auch Zeilen, die mit % anfangen, komplett als Ruby interpretiert:

% ruby code

Mehrere Zeilen

Diese Konstrukte können etwas undankbar sein, weil Anfang und Ende nicht offensichtlich als zusammengehörig erkennbar sind. Sie funktionieren wie Blöcke in Ruby und werden durch <% end %> beendet. Man verwendet diese Sprachkonstrukte häufig für Schleifen, wie zum Beispiel:

<ul>
<% 3.times do %>

  <li>list item</li>

<% end %>
</ul>

Was die folgende Ausgabe erzeugt:

  • list item
  • list item
  • list item

Derselbe Code könnte auch so geschrieben werden:

<ul>
% 3.times do
  <li>list item</li>
% end
</ul>

Ergebniseinsetzung

<%= Ruby-Ausdruck %>
- Der Wert, der als Ergebnis des Ausdrucks herauskommt, z. B. 11 von 7 + 4, ersetzt im Ergebnis den ganzen Ausdruck einschließlich der
<%= %>

-Klammerung. Oft handelt es sich nur um eine Zeile oder einen Teil einer Zeile.

Kommentare

<%# Kommentar %>
- dies ist dasselbe wie ein Kommentar in Ruby. Der ganze Kommentar wird beim Erzeugen der Ausgabe weggelassen.

Andere Dinge, die in eRuby üblich sind, wurden einfach von Ruby übernommen, wie zum Beispiel die Zeichenketteninterpolation mit

#{Ausdruck}

, die es in ähnlicher Form auch in Sprachen wie Perl (Programmiersprache) und PHP gibt.

Implementierungen

Es gibt viele Implementierungen von eRuby:

eruby

eruby ist eine Implementierung von eRuby, die in C geschrieben ist.

erb

erb ist eine Implementierung von eRuby, die ganz in Ruby geschrieben ist.

erubis

erubis ist eine Implementierung von eRuby, die in Ruby und auch in Java geschrieben ist. Laut der eigenen Homepage läuft sie schneller als eruby und erb (Stand 2011)[1] und hat viele weitere Optionen, einschließlich alternativer Tags, die das Schreiben von validem XML ermöglichen.

ember

ember[2] ist eine in reinem Ruby geschriebene Implementierung von eRuby. Es erlaubt das Debuggen von eRuby-Templates, verbessert deren Kompositionsmöglichkeiten und erlaubt mächtige Abkürzungen für eRuby-Direktiven.

Siehe auch

Einzelnachweise

  1. kuwata-lab.com (Memento des Originals vom 6. Oktober 2017 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.kuwata-lab.com
  2. ember

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.