繁体   English   中英

无法在Node.js中的castArrayFilters读取未定义的属性'castForQuery'

[英]Cannot read property 'castForQuery' of undefined at castArrayFilters in Node.js

我使用arrayFiltersfindOneAndUpdate(猫鼬 )选项来更新 TimetableModel 名称isRecursive领域的价值。 字段在MongoDb中 成功更新,但是我也收到了异常 ,该异常正在此查询的末尾添加。

我应该怎么做才能消除此异常?

以下是我的工作细节:

版本: “ mongodb”:“ ^ 3.1.13”,“ mongoose”:“ ^ 5.4.9”,

这是架构:

const timetableSchema = new Schema({
individualId: {
    type: Schema.Types.ObjectId,
    required: true
},
date: {
    type: Number,
    required: false
},
time: []});

这是逻辑:

TimetableModel.findOneAndUpdate({
        individualId: req.query.individualId,
        date: req.query.date,
    }, {
        'time.$[i].name': req.query.name,
        'time.$[i].isRecursive': req.query.isRecursive,
    }, {
        arrayFilters: [{
            'i.timeSlot': req.query.timeSlot
        }],
    }, function (err, result) {
        if (result) {
            resolve(result);
        } else if (err) {
            reject(err);
        }
    }).catch((err) => {
        reject(err);
    })

这是例外

“ TypeError:无法读取castArrayFilters中未定义的属性'castForQuery'(/Users/user/Desktop/Projects/ParentsPlus/ParentsPlusRepo/parents-plus-back-end/node_modules/mongoose/lib/helpers/update/castArrayFilters.js:59 :37)在model.Query.Query._findAndModify(/Users/user/Desktop/Projects/ParentsPlus/ParentsPlusRepo/parents-plus-back-end/node_modules/mongoose/lib/query.js:1739:5)处/Users/user/Desktop/Projects/ParentsPlus/ParentsPlusRepo/parents-plus-back-end/node_modules/mongoose/lib/query.js:3205:3)在model.Query。(/ Users / user / Desktop / Projects /在model.Query._wrappedThunk [as _findOneAndUpdate](/ Users / user / Desktop / Projects / ParentsPlus / ParentsPlusRepo /在process.nextTick(/ Users / user / Desktop / Projects / ParentsPlus / ParentsPlusRepo / parents-plus-back-)上的父母加后端/node_modules/mongoose/lib/helpers/query/wrapThunk.js:16:8)结束/node_modules/kareem/index.js:369:33) t _combinedTickCallback(internal / process / next_tick.js:132:7)在process._tickCallback(internal / process / next_tick.js:181:9)”

我认为这是因为版本错误5.4.4也许另一个先前的版本 据报道在这里 目前,我通过将猫鼬版本下载到5.3.15解决了该问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM