Ruby on rails mongodb过滤结果分组
我在rails中有一个mongo支持的联系人数据库。我正在使用过滤器报告多个复选框 例如:Ruby on rails mongodb过滤结果分组,ruby-on-rails,mongodb,ruby-on-rails-4,Ruby On Rails,Mongodb,Ruby On Rails 4,我在rails中有一个mongo支持的联系人数据库。我正在使用过滤器报告多个复选框 例如: 我正在使用复选框过滤器 表名为转换 转换表中的列有:浏览器,日期,城市,州,国家,网络,语言 我正在为过滤器选择日期,城市,过滤后应根据过滤器进行分组 注意:第一个过滤器下一个仅分组 有时:日期,城市,国家对于筛选器,它将取决于用户 我只做了这个代码 Conversion.collection.aggregate([ { "$match" => { "date" => { '$
转换
转换
表中的列有:浏览器
,日期
,城市
,州
,国家
,网络
,语言
日期
,城市
,过滤后应根据过滤器进行分组日期
,城市
,国家
对于筛选器,它将取决于用户Conversion.collection.aggregate([
{ "$match" => {
"date" => { '$gte' => start_date, '$lte' => end_date }
}
},
{ "$group" => {
"_id" => {
"country" => "$country",
"city" => "$city",
"browser" => "$browser",
"network" => "$network",
"language" => "$language"
}
}
},
])
但这段代码每次都对所有列进行分组。我希望选中的复选框列只进行分组。为此,如何编写分组代码?有人能提出任何建议吗?首先根据复选框中选定的列创建一个对象,例如grouping={}。如果(…){grouping.country=“$country”;}。。。然后在组步骤中使用此对象:{$group=>{“\u id”=>grouping}