Salve! Problema da super principiante: supponiamo che in un template
(richiamato a sua volta da un layout via yield) ho del codice così:
<% @lista.each_index do |i| -%>
<%= ‘’+@lista[i]+’’ + h(’>> index:’)+i.to_s %>
<% end %>
Supponiamo ora che abbia scoperto che si può fare di meglio:
<% @lista.each_with_index do |item,i| -%>
<%= ‘’+item+’’ + h(’>> index:’)+i.to_s %>
<% end %>
Però mi voglio tenere la prima versione nel template, per tenerne
traccia, ma senza farla eseguire. In altre parole voglio commentarla. I
commenti html non funziano (commentano i risultati html, ma la
funzione viene eseguita), e neanche i commenti ruby #. Come faccio? Si
può?
Grazie!
Il 15/07/07, Luca R. [email protected] ha scritto:
Però mi voglio tenere la prima versione nel template, per tenerne
traccia, ma senza farla eseguire. In altre parole voglio commentarla. I
commenti html non funziano (commentano i risultati html, ma la
funzione viene eseguita), e neanche i commenti ruby #. Come faccio? Si
può?
Credo tu possa fare
<%
comment
%>
Questo perché il codice dentro le <% %> viene valutato come se fosse ruby,
quindi al suo interno il # funziona.
Poi esisterà sicuramente una soluzione migliore :).
Grazie!
di niente!
Matteo
On 7/15/07, Luca R. [email protected] wrote:
<% @lista.each_with_index do |item,i| -%>
<%= ‘’+item+‘’ + h(‘>> index:’)+i.to_s %>
<% end %>
Però mi voglio tenere la prima versione nel template, per tenerne
traccia, ma senza farla eseguire. In altre parole voglio commentarla.
Ti basta inserire un # subito dopo il tag di apertura:
<%# @lista.each_index do |i| -%>
<%#= ‘’+@lista[i]+‘’ + h(‘>> index:’)+i.to_s %>
<%# end %>
Oppure se si stratta di una porzione di codice più larga, puoi usare la
coppia begin/end, assicurandoti che siano entrambi all’inizio della
riga:
<%
=begin %>
…
…
…
<%
=end %>
Il codice all’interno di <% e %> è codice ruby, per cui puoi utilizzare i
commenti proprio come faresti in un normale programma.
Ciao,
Antonio