Если у меня есть цикл, например
users.each do |u|
#some code
end
Где пользователи - это хеш из нескольких пользователей. Какая самая простая условная логика, чтобы увидеть, находитесь ли вы на последнем пользователе в хэше пользователей и хотите выполнить только определенный код для этого последнего пользователя, например,
users.each do |u|
#code for everyone
#conditional code for last user
#code for the last user
end
end
each_with_index
илиlast
. - person Shadwell   schedule 23.10.2010Hash
смешивается с Enumerable, поэтому у него естьeach_with_index
. Даже если хеш-ключи не отсортированы, такая логика возникает постоянно при рендеринге представлений, когда последний элемент может отображаться по-разному, независимо от того, действительно ли он последний в каком-либо значимом для данных смысле. - person Raphomet   schedule 23.10.2010each_with_index
, извиняюсь. Ага, я вижу, что это произойдет; просто пытаюсь прояснить вопрос. Лично для меня лучшим ответом является использование.last
, но это не относится к хешу только для массива. - person Shadwell   schedule 23.10.2010