Компиляция количества записей по месяцам и пользователям

#ruby-on-rails #database

#ruby-on-rails #База данных

Вопрос:

У меня есть панель мониторинга, над которой я работаю, в которой в основном перечислены все пользователи системы и количество выполняемых ими действий за каждый месяц. Мне любопытно, что, по мнению других, было бы эффективным способом компиляции этих данных. Я думаю, что в конечном итоге мне следует попытаться получить его в этом формате:

{ пользователь1 => { :январь => 13, : февраль => 21, : март => 4, … }, пользователь2 => { :январь => 16, : февраль => 18…. }, …. }

Хотя я ни в коем случае не женат на этой идее. Вот скриншот того, над чем я работаю, чтобы помочь вам лучше понять:

http://i.stack.imgur.com/HbSln.png

Ответ №1:

Если вы используете журнал активности для отслеживания активности (по одной записи на действие), то это должно быть довольно просто. В принципе, ПОДСЧИТАЙТЕ (*) свои записи активности для каждого пользователя и СГРУППИРУЙТЕ их по месяцу, в котором они произошли.

В качестве альтернативы, и в зависимости от ваших требований, вы также могли бы иметь только одну запись на пользователя в месяц (вместо журнала) с увеличивающимся количеством действий.