Я хотел бы добавить метод для всех коллекций для конкретной модели. Скажем, я хочу добавить метод my_complicated_averaging_method
в коллекции WeatherData:
WeatherData.all.limit(3).my_complicated_averaging_method()
Station.first.weatherdata.my_complicated_averaging_method()
Каков наилучший способ сделать это? В настоящий момент единственный способ, который я нашел, выглядит следующим образом:
class WeatherData < ActiveRecord::Base
def self.my_complicated_averaging_method
weighted_average = 0
@relation.each do |post|
# do something complicated
# weighted_average =
end
return weighted_average
end
end
Является ли это хорошим способом добавления метода в коллекцию? Есть ли лучший способ для этого?