Php $pipeline不是Laravel中的列表(意外索引:“$group”)

Php $pipeline不是Laravel中的列表(意外索引:“$group”),php,mongodb,laravel,mongodb-query,aggregation-framework,Php,Mongodb,Laravel,Mongodb Query,Aggregation Framework,运行以下查询时,结果将显示在mongo shell中 样本记录 { "_id" : ObjectId("587e21df6e79d255011a9c6a"), "vendor_id" : "101", "subscription_id" : 14, "created_at" : ISODate("2017-01-17T13:53:35.272Z") } { "_id" : ObjectId("587e21df6e79d255011a9c6c"),

运行以下查询时,结果将显示在mongo shell中

样本记录

{
    "_id" : ObjectId("587e21df6e79d255011a9c6a"),
    "vendor_id" : "101",
    "subscription_id" : 14,
    "created_at" : ISODate("2017-01-17T13:53:35.272Z")
}
{
    "_id" : ObjectId("587e21df6e79d255011a9c6c"),
    "vendor_id" : "102",
    "subscription_id" : 14,
    "created_at" : ISODate("2017-01-17T13:56:35.272Z")
}
/* 1 */
{
    "result" : [ 
        {
            "_id" : 14,
            "list" : [ 
                {
                    "_id" : ObjectId("587e21df6e79d255011a9c6a"),
                    "vendor_id" : "user_101"
                }, 
                {
                    "_id" : ObjectId("587e21df6e79d255011a9c6b"),
                    "vendor_id" : "user_101"
                }
            ]
        }
    ],
    "ok" : 1.0000000000000000
}
查询

db.user_config.aggregate({$group: 
{
    _id : "$subscription_id", 
    list: 
    { 
        $push:  
        { 
            _id: "$_id", 
            vendor_id: "$vendor_id"
        } 
     }
}})
结果

{
    "_id" : ObjectId("587e21df6e79d255011a9c6a"),
    "vendor_id" : "101",
    "subscription_id" : 14,
    "created_at" : ISODate("2017-01-17T13:53:35.272Z")
}
{
    "_id" : ObjectId("587e21df6e79d255011a9c6c"),
    "vendor_id" : "102",
    "subscription_id" : 14,
    "created_at" : ISODate("2017-01-17T13:56:35.272Z")
}
/* 1 */
{
    "result" : [ 
        {
            "_id" : 14,
            "list" : [ 
                {
                    "_id" : ObjectId("587e21df6e79d255011a9c6a"),
                    "vendor_id" : "user_101"
                }, 
                {
                    "_id" : ObjectId("587e21df6e79d255011a9c6b"),
                    "vendor_id" : "user_101"
                }
            ]
        }
    ],
    "ok" : 1.0000000000000000
}
但是,当通过laravel执行相同的操作时,会出现以下错误$管道不是列表(意外索引:$group)

下面是laravel代码

$configuration_list = UserConfig::raw()->aggregate([
            '$group' => [
                    '_id'    => '$subscription_id',
                    'list'  => ['$push' => 
                     ['_id' => '$_id', 'vendor_id' => '$vendor_id']]
                ]
            ]
        );
有人能帮我解决这个问题吗


我尝试使用您的代码,甚至更早,但返回的是空响应。实际上结果是预期的,因为相同的查询在MongoShell中给出了结果