Rails has_many считает количество дочерних строк
Каков "рельсовый способ" для эффективного захвата всех строк родительской таблицы вместе с количеством детей в каждой строке?
Я не хочу использоватьcounter_cache
поскольку я хочу выполнить эти подсчеты на основе некоторых временных условий.
Пример блога клише: Таблица статей. Каждая статья имеет 0 или более комментариев.
Я хочу узнать, сколько комментариев имеет каждая статья за прошедший час, день, неделю.
Однако в идеале я не хочу перебирать список и делать отдельные вызовы sql для каждой статьи, и при этом я не хочу использовать:include
предварительно извлечь все данные и обработать их на сервере приложений.
Я хочу выполнить один оператор SQL и получить один набор результатов со всей информацией.
Я знаю, что могу жестко закодировать полный SQL, и, возможно, мог бы использовать.find
и просто установить:joins
, :group
, а также:conditions
параметры ... НО мне интересно, есть ли "лучший" путь ... он же "путь рельсов"
заранее спасибо