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

Jak dynamicznie $ustawić pole poddokumentu w mongodb?

Rozgryzłem to.

Zasadniczo przed uruchomieniem zapytania należy skonstruować obiekt „zastępczy” dokumentu podrzędnego, który próbujesz zaktualizować, na przykład:

var projectID = 'JKS78678923SDFD678';

var key = 'Three';
var value = 'Three';

var placeholder = {};
placeholder['options.' + key] = value;

Teams.findAndModify({
    query: {
        projectID:mongojs.ObjectId(projectID)
    },
    update: {
        $set : placeholder
    },
    upsert: true,
    multi: false,
    new: true
},
function(error, result, lastErrorObject){

    console.log(result);

});

To aktualizuje wszystkie pola, które już istnieją, i tworzy parę pole/wartość, jeśli jeszcze nie istniała.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Zaktualizuj pole wewnątrz listy za pomocą sterownika MongoDB C#

  2. Jak dodać porządekza pomocą @query w repozytorium mongodb

  3. MongoEngine - Usunięte pole nadal podnosi ValidationError

  4. MongoDB $aggregate $wypychanie wielu pól w Java Spring Data

  5. Jak wykonać zapytanie o zakres dat w kolekcji MongoDB, w której data ISO jest przechowywana w polu ciągu?