如何在Mongoose上更新字符串数组的元素?

时间:2017-08-22 19:39:15

标签: node.js mongodb mongoose

我正在尝试更新模型中的数组元素。这是一个简单的字符串数组。当我运行代码时,元素会更新,但它会插入一个值为'newType'的新数组。我正在使用mongoose 4.11.7。

我期望的结果是: ['a','b','newType']但在更新后它返回['a','b',['newType']]。

const profile = await Profile.findOneAndUpdate({
    _id: 1,
    types: 'oldType'
}, {
   $set: {
       'types.$': 'newType'
   }
});

我的模特是:

const schema = new Schema({
    types: [{
        type: String,
        trim: true
    }]
}, {
    timestamps: true,
    collection: 'Profile'
});

0 个答案:

没有答案