Я хочу сделать мой код немного более читабельным, вызвав #rando для любого массива и получить случайный элемент (rando, потому что метод rand () уже существует, и я не хочу, чтобы он был any путаница).
Итак, я открыл класс и написал метод:
class Array
def rando
self[ rand(length) ]
end
end
Это кажется слишком простым.
Когда я открываю irb и набираюarr = %w(hi bye)
и затем arr.rando
Я получаю привет или пока.Это ожидается.Однако, в моей консоли рельсов, когда я делаю то же самое, я получаю ArgumentError: wrong number of arguments (1 for 0)
Я отслеживаю Array
вверх по цепи рельсов и не могу понять это.Есть идеи?
FWIW, я использую рельсы 2.3.11 и ruby 1.8.7