Поддерживает ли mongoengine поиск в статистическом методе?

Я в настоящее время использую версию mongodb v3.0

это мой код:

{'$lookup': {
      'from': 'Matrix',
      'localField': 'account_id',
      'foreignField': 'account_id',
      'as': 'Matrix'
      }
}

У меня эта ошибка:

Приложение, вызывающее исключение: исключение: Нераспознанное имя этапа конвейера: '$lookup'

0 ответов

Запрос с использованием структуры агрегации с PyMongo. Для этого требуется два подключения к MongoDB (одно для PyMongo для выполнения запроса агрегации, а второе для обычного запроса или вставки или обновления через MongoEngine).

Но _get_collection() решает эту проблему.

В приведенном ниже примере мы используем два модельных плана и дополнения, и в обоих отношениях указано значение quote_id

collection = Планы._get_collection()

    pipeline = [
        {
            "$lookup":               
            {
                "from":"addons",
                "localField":"plans.quote_id",
                "foreignField":"addons.quote_id",
                "as": "addons_docs"
            }
        },
        {
            "$match":{
                "addons_docs":{
                    "$ne":[]
                }
            }
        },
        {
            "$addFields":
            {
                "addons_docs":
                {
                    "$arrayElemAt":["$addons_docs",0]
                }
            }
        },
        {
            "$replaceRoot":
            {
                "newRoot":
                {
                    "$mergeObjects":["$addons_docs","$$ROOT"]
                  
                }
            }
        },
        
        {
            "$project":
            {
                "addons_docs":0
            }
        },
        {
            "$sort":
            {
                "_id":-1
            }
        },
        {
            "$limit":100
        }
    ]
    cursor = collection.aggregate(pipeline)
    try:
        for doc in cursor:
            print(doc)
    finally:
        cursor.close()
Другие вопросы по тегам