首页 > 解决方案 > 创建视图时出现 MongoDB Compass 错误:管道阶段规范对象必须只包含一个字段

问题描述

我是 MongoDB 的新手,想在完成所有聚合阶段后创建一个视图,当我单击创建视图时似乎给了我这个错误:管道阶段规范对象必须包含一个字段。

这是 MongoDB Compass 生成的聚合查询:

[{
    $unwind: {
        path: "$destinations",
        preserveNullAndEmptyArrays: true
    }
}, {
    $set: {
        "destinationId": {
            $toInt: "$destinations.ref"
        }
    }
}, {
    $lookup: {
        from: 'destinations',
        localField: 'destinationId',
        foreignField: 'destinationId',
        as: 'destination'
    }
}, {
    $group: {
        _id: "$productCode",
        destinations: {
            "$push": {
                $first: "$destination"
            }
        },
        status: {
            "$first": "$status"
        },
        productCode: {
            "$first": "$productCode"
        },
        language: {
            "$first": "$language"
        },
        createdAt: {
            "$first": "$createdAt"
        },
        lastUpdatedAt: {
            "$first": "$lastUpdatedAt"
        },
        title: {
            "$first": "$title"
        },
        ticketInfo: {
            "$first": "$ticketInfo"
        },
        pricingInfo: {
            "$first": "$pricingInfo"
        },
        images: {
            "$first": "$images"
        },
        logistics: {
            "$first": "$logistics"
        },
        timeZone: {
            "$first": "$timeZone"
        },
        description: {
            "$first": "$description"
        },
        inclusions: {
            "$first": "$inclusions"
        },
        exclusions: {
            "$first": "$exclusions"
        },
        additionalInfo: {
            "$first": "$additionalInfo"
        },
        cancellationPolicy: {
            "$first": "$cancellationPolicy"
        },
        bookingConfirmationSettings: {
            "$first": "$bookingConfirmationSettings"
        },
        bookingRequirements: {
            "$first": "$bookingRequirements"
        },
        languageGuides: {
            "$first": "$languageGuides"
        },
        bookingQuestions: {
            "$first": "$bookingQuestions"
        },
        tags: {
            "$first": "$tags"
        },
        itinerary: {
            "$first": "$itinerary"
        },
        translationInfo: {
            "$first": "$translationInfo"
        },
        supplier: {
            "$first": "$supplier"
        }
    }
}, {
    $lookup: {
        from: 'schedules',
        localField: 'productCode',
        foreignField: 'productCode',
        as: 'schedules'
    }
}, {
    $set: {
        "schedules": {
            "$first": "$schedules"
        }
    }
}, {
    $project: {
        _id: true,
        destinations: true,
        schedules: true,
        status: true,
        productCode: true,
        language: true,
        createdAt: true,
        lastUpdatedAt: true,
        title: true,
        ticketInfo: true,
        pricingInfo: true,
        images: true,
        logistics: true,
        timeZone: true,
        description: true,
        inclusions: true,
        exclusions: true,
        additionalInfo: true,
        cancellationPolicy: true,
        bookingConfirmationSettings: true,
        bookingRequirements: true,
        languageGuides: true,
        bookingQuestions: true,
        tags: true,
        itinerary: true,
        translationInfo: true,
        supplier: true
    }
}
}]

我想知道我无法创建视图以及错误的真正含义。我检查了多个地方,但没有运气。

请帮忙。

谢谢你。

标签: mongodbviewmongodb-compass

解决方案


推荐阅读