繁体   English   中英

MongoDB更新功能不适用于Mongoose

[英]MongoDB update function doesn't work with Mongoose

我试图在MongoDB中的文档中插入一个新字段,但是查询后数据库没有任何更改。 这是我数据库的单个元素:

{
"_id" : ObjectId("5a9f5f4bb9ba6117b5551f7d"),
"userId" : "user123",
"name" : "Device zm3",
"category" : [
    "pm10",
    "pm25",
    "temperature"
],
"__v" : 0}

我想要这样的东西:

{
"_id" : ObjectId("5a9f5f4bb9ba6117b5551f7d"),
"userId" : "user123",
"name" : "Device zm3",
"category" : [
    "pm10",
    "pm25",
    "temperature"
],
"data": 5
"__v" : 0}

我使用以下查询:

Device.update({
        'userId': 'user123'
      }, {
        $set: {
          'data': 5
        }
      }, {
        upsert: true,
      }

我正在尝试在数据库中已经存在诸如“ name”或“ category”之类的女巫,在这种情况下解决方案有效。

如果要使用Mongoose添加字段,则该字段也应位于Mongoose模式中。 因此,如果要使用Mongoose,则必须在设备架构中添加“数据”。 这就是为什么对象/模式中已经存在的字段(例如“名称”或“类别”)有效但新字段无效的原因。

暂无
暂无

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

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