Списки рельсов имеют .first и .second - есть .huthth или .sixty_nineth? - PullRequest
28 голосов
/ 11 октября 2011

Существует ли класс или другое расширение для Rails, которое допускает больше, чем первые несколько элементов в серии (и последний)?Эти работы:

[2,45,2,14,53,23,634,346,34,46,643,634,346,34,34].fifth
# -> 53
[2,45,2,14,53,23,634,346,34,46,643,634,346,34,34].last
# -> 34

так где же?

list.sixth
list.hundredth 

Ответы [ 3 ]

67 голосов
/ 11 октября 2011

Было время, когда Rails добавил их, но было много противоречий , поэтому большинство из них было удалено.Единственный оставшийся эксперимент - Array#forty_two.

16 голосов
/ 11 октября 2011

Вы можете просто использовать квадратные скобки:

list[6]
list[100]
4 голосов
/ 11 октября 2011

В activesupport, он обезьяны исправляет несколько из этих методов в классе Array.Если вы действительно хотите больше, вы можете посмотреть, как реализовать из activesupport:

https://github.com/rails/rails/blob/master/activesupport/lib/active_support/core_ext/array/access.rb

...