mongodb Mongoose对象多搜索问题(对象中的对象)

rn0zuynd  于 2023-05-17  发布在  Go
关注(0)|答案(1)|浏览(110)

mongose find error
my search code你好,我想用mongoose快速列出数组中的错误。我找不到结果。

const locationValidate = await iUzmanlıklar.find(
            {
                $or: [
                  { mainName: { $regex: searchRgx, $options: "i" } },
                  
                 
                  
                  
                 
                  
                 
                ],
                $and:[
                    { mainCategoryId: _referenceCategory },
                
                    
                    
                  
                ]
                
              },'specialtyId translations isList mainName referenceCategory uuid authorizedCategories');

我想发送一个请求以获得快速结果。

b5lpy0ml

b5lpy0ml1#

如果你想获取所有对于特定mainCategoryId错误为true的翻译,你可以使用下面的代码:

try {
    const locationValidate = await iUzmanliklar.aggregate([
        {
            $match: {
                mainCategoryId: _referenceCategory
            }
        },
        {
            $project: {
                translationsArray: { $objectToArray: "$translations" }
            }
        },
        {
            $unwind: "$translationsArray"
        },
        {
            $match: {
                "translationsArray.v.error": true
            }
        },
        {
            $project: {
                translation: "$translationsArray.v"
            }
        }
    ]);
} catch (err) {
    console.error(err);
}

'translations.$': 1投影用于在结果中仅包括匹配的平移。locationValidate应该是一个可以根据需要进一步处理或记录的数组。

相关问题