Я строю рельсы 5 приложение.
В этом приложении я получил два объекта / модели. Система показателей и измерения.
В системе показателей может быть много Систем показателей (детей), использующих Scorecard_id.
Система показателей также может иметь много показателей. Каждый показатель имеет атрибут оценки, сохраненный в виде числа с плавающей запятой.
Эта иерархия может быть выполнена на двух уровнях:
Scorecard A
-> Scorecard B
-> Measure A (score 7.5)
-> Measure B (score 8.0)
Я хочу получить среднюю оценку по показателям A и B для объекта Scorecard A.
Если я получу оценочную карточку B, я легко получу среднюю оценку по мерам A и B, используя метод, описанный ниже, но мне нужно будет получить его через объект верхнего уровня (оценочная карточка A).
def score
self.measures.sum(:score) / self.measures.count
end