MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Mongo $addToSet z wieloma wartościami poprawna składnia

Musisz dodać obiekt, aby ustawić UsersAndQuestions:

{$addToSet: {UsersAndQuestions: { userID: idToAdd, questionID: questionToAdd } }}

AKTUALIZACJA.

Zrobiłbym to za pomocą dwóch zapytań:

Listing.update({_id: ObjectId(listingToUpdate), 'UsersAndQuestions.userID': idToAdd}, 
    {"$addToSet": {"UsersAndQuestions.$.questionID": questionToAdd}}
    , function (err, result) {
        if(result.n === 0){
            //we haven't found document with the userId - idToAdd
            //we need to insert to UsersAndQuestions document with this user
            Listing.update({_id: ObjectId(listingToUpdate)},
                {$addToSet: {UsersAndQuestions: { userID: idToAdd, questionID: questionToAdd } }}, 
                function(err, res){

                })
        }
})



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Problem z kompasem MongoDB z WSL2

  2. Indeksowanie Mongodb dla agregatów

  3. MongoDB 2.2 — Aktualizowanie dokumentu zagnieżdżonego w tablicy

  4. Jak zwrócić dokumenty, w których dwa pola mają tę samą wartość?

  5. MongoDB przez Mongoose JS — Co to jest findByID?