Как добавить метод в коллекцию activerecord?
Я хотел бы добавить метод для всех коллекций для конкретной модели. Допустим, я хочу добавить метод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
Это хороший способ добавить метод в коллекцию? Есть ли лучший / поддерживаемый способ сделать это?