У меня есть метод, который прекрасно работает (с Rails 3 и PostgreSQL); мне просто интересно, возможно ли сделать это независимым от базы данных:
FarmGatePrice.average :price, :group => 'EXTRACT(WEEK FROM date)'
Насколько я понимаю, методы извлечения недельного номера ISO из даты всегда зависят от базы данных.
Я мог бы использовать что-то вроде виртуального атрибута: неделю, как видно здесь , но, похоже, параметры: group принимает только сырой SQL. Я также видел это решение , но оно не соответствует моим потребностям.
Другой способ - использовать представление базы данных или даже добавить столбец: week, заполненный методом обратного вызова, но я бы предпочел не связываться со своей схемой.
Итак, какая-нибудь подсказка?