我正在构建一个简单的应用程序,我想向管理员显示一些简单的统计数据。我想知道是否可以从数据库中获取使用 datamapper 在同一日期创建的对象的数组,或者我是否必须手动浏览记录并计算它们?
对象具有 created_at 属性。
我正在构建一个简单的应用程序,我想向管理员显示一些简单的统计数据。我想知道是否可以从数据库中获取使用 datamapper 在同一日期创建的对象的数组,或者我是否必须手动浏览记录并计算它们?
对象具有 created_at 属性。
试试这个: -
假设您想计算在特定日期创建的用户。
User.group('date(created_at)').count
=> {"2013-05-20"=>66,
"2013-05-07"=>46,
"2013-05-17"=>9,
"2013-05-13"=>28,
"2013-05-22"=>22,
"2013-05-15"=>43,
"2013-05-08"=>32,
"2013-06-12"=>2,
"2013-05-28"=>22,
"2013-05-16"=>35,
"2013-05-09"=>33,
"2013-05-10"=>132,
"2013-05-21"=>5,
"2013-05-14"=>38,
"2013-05-11"=>4}
所以我设法解决了它,我不知道这是否是正确的方法,但它有效
days = Array.new
count = Array.new
photos_per_day = Photo.aggregate(:all.count, :upload_date)
photos_per_day.each do |ppd|
count.push(ppd[0])
days.push(ppd[1].day.to_s + " " + Date::MONTHNAMES[photo[1].month])
end
{:days => days, :count => count}.to_json