1

How can I find an object in the array "friends" with the id "5b6ef34cf2b0c73490d9f742" in the document with the id "5b6ef33ff2b0c73490d9f741" and update its "favorite" key?

{
    "_id": {
        "$oid": "5b6ef33ff2b0c73490d9f741"
    },
    "friends": [
        {
            "id": "5b6ef34cf2b0c73490d9f742",
            "favorite": false
        },
        {
            "id": "5b6ef34cf2b0c73490d9f743",
            "favorite": false
        }
    ],
    "__v": 0
},
{
    "_id": {
        "$oid": "5b6ef33ff2b0c73490d9f745"
    },
    "friends": [
        {
            "id": "5b6ef34cf2b0c73490d9f742",
            "favorite": false
        },
        {
            "id": "5b6ef34cf2b0c73490d9f744",
            "favorite": false
        }
    ],
    "__v": 0
}
Andrew Korin
  • 294
  • 3
  • 17

1 Answers1

0

use update with $set

model.update({"_id":'5b6ef33ff2b0c73490d9f741'}, {$set: {"friends.$.favorite": "true""}})
Sajeetharan
  • 216,225
  • 63
  • 350
  • 396
  • 1
    This only works if I have 1 document in the collection, but when there are two or more it will update the 1st one. – Andrew Korin Aug 12 '18 at 13:11