小编Bal*_*han的帖子

使用 Mongoose 更新数组中的特定对象时出错

我需要更新数组中的特定对象

{
    "_id": "543e2f8e769ac100008777d0",
    "createdDate": "2014-10-15 01:25 am",
    "cancle": false,
    "eventDateAndTime": "2014-02-12 12:55 am",
    "eventstatus": true,
    "userPhone": "44444444",
    "userId": "54334def7e85de48638d1069",
    "createdBy": "four",
    "eventName": "real tea",
    "__v": 0,
    "friends": [
        {
            "phoneNumber": "11111111",
            "userName": "one",
            "userId": "54310801e2659ecc3650100b",
            "status": 0
        },
        {
            "phoneNumber": "22222222",
            "userName": "two",
            "userId": "54310814e2659ecc3650100c",
            "status": 1
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

我尝试了很多,我不知道我错过了什么。

event.update(
                    function(err, eventSaved) {
                    if(err) {
                 res.json({'err':err});
                    }
                })
Run Code Online (Sandbox Code Playgroud)

我收到错误响应

err: {
    name: "MongoError"
    code: 66
    err: "After applying the update to the document {_id: ObjectId('543e2ecb74d70100001545ad') , ...}, …
Run Code Online (Sandbox Code Playgroud)

javascript mongoose mongodb node.js

5
推荐指数
1
解决办法
4667
查看次数

mongodb将新字段插入数组中

我试图将一个新字段插入到一个对象数组中

{
    "_id": "543356fe0c9af6066e68970c",
    "createdDate": "2014-10-06 07:59 pm",
    "cancle": false,
    "eventDate": "2014/12/12",
    "eventstatus": true,
    "location": "chennai",
    "userId": "54310801e2659ecc3650100b",
    "createdBy": "one",
    "eventName": "tea ",
    "__v": 0,
    "friends": [
        {
            "userId": "54310814e2659ecc3650100c",
            "userName": "two",
            "phoneNumber": "22222222"
        },
        {
            "userId": "54310945e2659ecc3650100d",
            "userName": "three",
            "phoneNumber": "33333333"
        },
        {
            "userId": "54334def7e85de48638d1069",
            "userName": "four",
            "phoneNumber": "44444444"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

我想为friends数组中的所有对象添加"status":0

我尝试使用addtoset,push和多种方式,将其添加为friends数组中的新对象.

db.events.update({},{$push:{ "friends" : {"status" : 0} }},false,true)
db.events.update({},{$addToSet : {'friends' : $each: [{ 'status':0}]}},false,true)
Run Code Online (Sandbox Code Playgroud)

请让我知道我做错了什么.谢谢你的帮助

javascript mongodb nosql node.js

4
推荐指数
1
解决办法
4333
查看次数

标签 统计

javascript ×2

mongodb ×2

node.js ×2

mongoose ×1

nosql ×1