2012-02-09 14 views
5

He estado realizando un curso intensivo de Ruby y Ruby on Rails y no puedo resolverlo: En los archivos html ruby ​​incorporados, hay varias etiquetas. <%%> para la ejecución <% =%> para la salida, pero ¿qué función cumplen estas etiquetas: <% = -%>, ¿qué hay con el signo "-" al final?Etiquetas rubb "erb" incrustadas

Gracias.

+3

La diferencia se explica en [esta publicación] (http://stackoverflow.com/q/7996695/158689) –

Respuesta

2

This link contiene una buena visión general de la marca erb.

Desde el sitio:

TAGS RECONOCIDOS

ERB reconoce ciertas etiquetas en la plantilla proporcionada y convierte
ellos basados ​​en las reglas siguientes:

<% Ruby code -- inline with output %> 

<%= Ruby expression -- replace with result %> 

<%# comment -- ignored -- useful in testing %> 

% a line of Ruby code -- treated as <% line %> (optional -- see ERB.new) 

%% replaced with % if first thing on a line and % processing is used 

<%% or %%> -- replace with <% or %> respectively 

El resto del texto se pasa a través del intercambio de filtros ERB re.

+3

Los enlaces están muertos. Una versión archivada: http://wayback.archive.org/web/20100215150502/http://cheat.errtheblog.com/s/erb/ – Miscreant

1

En ruby ​​document no hay detalles sobre este uso <%- o -%>. Pero funciona bien por esto:

erbA = ERB.new(erbA_str, 1, '-', "@output_buffer")

Aviso el 3er parámetro '-' ! Elimina los espacios en blanco previos o posteriores al usar <%- y -%> en consecuencia.

Cuestiones relacionadas