Si tengo un bucle comoDile al final de un bucle .Cada en rubí
users.each do |u|
#some code
end
Cuando los usuarios es un hash de varios usuarios. ¿Cuál es la lógica condicional más fácil de ver si está en el último usuario en el hash de los usuarios y sólo quiere ejecutar código específico para ese último usuario así que algo como
users.each do |u|
#code for everyone
#conditional code for last user
#code for the last user
end
end
Gracias
¿De verdad quieres decir un hash? Ordenar en un hash no siempre es confiable (dependiendo de cómo agregue cosas al hash y qué versión de ruby está usando). Con un pedido no confiable, el "último" elemento no será consistente. El código en la pregunta y las respuestas que está obteniendo son más apropiados para una matriz o enumerable. Por ejemplo, los hashes no tienen los métodos 'each_with_index' o' last'. – Shadwell
'Hash' se mezcla en Enumerable, por lo que tiene' each_with_index'. Incluso si las teclas hash no están ordenadas, este tipo de lógica aparece todo el tiempo cuando se renderizan vistas, donde el último elemento podría mostrarse de forma diferente independientemente de si es realmente "último" en cualquier sentido significativo de datos. – Raphomet
Por supuesto, de acuerdo, los hashes sí tienen 'each_with_index', disculpas. Sí, puedo ver que saldría; solo tratando de aclarar la pregunta. Personalmente, la mejor respuesta para mí es el uso de '.last' pero eso no se aplica a un hash solo de una matriz. – Shadwell