Есть ли в ваших отчетах что-то, что мешает использовать представление SQL или хранимую процедуру?
В одном конкретном проекте метод, который я часто нахожу полезным, состоит в том, чтобы создать свой SQL-запрос (который может быть довольно сложным) в качестве именованного представления в базе данных, а затем использовать
YourModel.connection.select_all(query)
чтобы вернуть данные. Это не оптимальный подход; Я стремлюсь изучить улучшения этого.
К сожалению, как вы предположили, поддержка для выполнения сложных отчетов на основе баз данных в рельсах кажется довольно ограниченной.