Я создаю приложение финансовой отчетности с Ruby on Rails. В приложении у меня есть ежемесячные объекты финансовой отчетности (с атрибутом «доход»). Для любого отдельного финансового отчета я хочу показать (1) годовой доход и (2) доход за последний год (календарные годы в порядке). У каждого объекта также есть атрибут Date (not Datetime), называемый «месяц» (обратите внимание на недопустимое имя метода «month» и «month»), возможно, я должен изменить это имя переменной).Сложная дата найти и ввести
Итак ...
Я думаю, что нужно (1) «найти» массив финансовой отчетности (т.е. объектов) в соответствующем диапазоне дат, а затем (2) суммировать поля «доходы». Мой код до сих пор ...
def ytd_revenue
# Get all financial_statements for year-to-date.
financial_statements_ytd = self.company.financial_statements.find(:all,
:conditions => ["month BETWEEN ? and ?", "self.month.year AND month.month = 1",
"self.month.year AND self.month.month" ])
# Sum the 'revenue' attribute
financial_statements_ytd.inject(0) {|sum, revenue| sum + revenue }
конец
Это не нарушает приложение, но возвращает «0», который не может быть правильным.
Любые идеи или помощь будут оценены!