eRuby (Embedded Ruby) est un système de modèles, ou «templates», qui enchâsse Ruby à l'intérieur d'un document texte. On l'utilise pour inclure du code Ruby dans un document HTML, à la manière de ASP, JSP ou encore PHP.

eRuby

Informations
Type Système de gabaritVoir et modifier les données sur Wikidata
Documentation docs.ruby-lang.org/en/trunk/ERB.html et docs.ruby-lang.org/ja/latest/library/erb.htmlVoir et modifier les données sur Wikidata

Utilisation modifier

eRuby permet au code Ruby d'être inclus entre une paire de balises <% et %>. Ces blocs de code sont ensuite évalués, puis substitués par le résultat de l'évaluation.

Voici quelques exemples de la syntaxe d'eRuby:

Ligne unique de Ruby

<% print "hello" %>

Ici, le résultat de l'évaluation, soit la chaîne de caractères « hello », viendrait substituer la ligne de code.

Lignes multiples

Un segment de code eRuby à multiples lignes fonctionne comme un bloc en Ruby et se termine par <% end %>. On peut l'utiliser afin de représenter une boucle

<ul>
<% 3.times do %>

  <li>Item de liste</li>

<% end %>
</ul>

Ce qui produit :

  • Item de liste
  • Item de liste
  • Item de liste

Une syntaxe alternative équivalente serait:

<ul>
% 3.times do
  <li>Item de liste</li>
% end
</ul>

Substitution par résultat d'une expression

<%= expression expression %>

Les balises qui permettent la substitution par une expression Ruby sont <%= et %>. Une expression telle que 13 + 37 serait remplacée par son résultat, soit 50 dans ce cas.

Commentaire

<%# commentaire %>

Les commentaires sont délimités par les balises <%# et %> et sont ignorés.

Il est aussi possible de procéder à une substitution par chaîne de caractères avec la syntaxe:

#{nom_de_la_chaine}

Implémentations modifier

Il existe plusieurs implémentations d'eRuby :

eruby modifier

eruby est une implémentation d'eRuby écrite dans le langage de programmation C.

erb modifier

erb est une implémentation d'eRuby écrite entièrement en Ruby, et qui se retrouve dans la bibliothèque standard Ruby.

erubis modifier

erubis est une version d'eRuby implémentée en Ruby et en Java, dont la performance serait meilleure que celle d'erb ou d'eruby[1].

ember modifier

ember est une implémentation Ruby d'eRuby qui permet le débogage des templates eRuby, améliore leur potentiel de composition, et fourni des directives raccourcies.

Voir aussi modifier

Références modifier

  1. « Erubis », sur kuwata-lab.com via Wikiwix (consulté le ).