Каждый раз, когда я вызываю метод проверки на любой модели, я получаю следующее сообщение об ошибке:ошибка проверки - неопределенный метод `zero? '
NoMethodError: undefined method `zero?' for nil:NilClass
Оказывается, что если я удалю функцию сумму от моего настроенного класса Array, ошибка будет уходить:
class Array
def sum
inject(nil) { |sum,x| sum ? sum+x : x }
end
..
Почему это происходит? Как я могу исправить это и сохранить функцию sum?
Я реализовал его из-за этой функциональности (взвешенный случайный массив): http: // dzone. com/snippets/weighted-random-array – Aljaz
Вам не нужно определять сумму, потому что рельсы определяют ее для вас. Предположительно автор кода, с которым вы связались, не хотел предполагать наличие рельсов (или он превышает сумму рельсов) –