tutorial rails que español ejemplos descargar curso caracteristicas ruby-on-rails ruby-on-rails-3 loops each

ruby-on-rails - que - ruby on rails tutorial pdf



La manera más rápida de verificar si en la primera iteración de un ciclo cada uno en Ruby/Rails (2)

En mi .erb , tengo un simple each bucle:

<%= @user.settings.each do |s| %> .. <% end %>

¿Cuál es la forma más sencilla de comprobar si actualmente está pasando por su primera iteración? Sé que podría establecer i=0...i++ pero eso es demasiado complicado dentro de un .erb . ¿Alguna sugerencia?


Depende del tamaño de tu matriz. Si es realmente enorme , debe .shift el primer elemento de la matriz, tratarlo y luego mostrar la colección:

<% user_settings = @user_settings %> <% first_setting = user_settings.shift %> # do you stuff with the first element <%= user_settings.each do |s| %> # ...

O puede usar .each_with_index :

<%= @user.settings.each_with_index do |s, i| %> <% if i == 0 %> # first element <% end %> # ... <% end %>


La forma más legible que encuentro es la siguiente:

<%= @user.settings.each do |s| %> <% if @user.settings.first == s %> <% # Your desired stuff %> <% end %> <% end %>