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

Nodejs Mongo wstawia się do poddokumentu - dynamiczna nazwa pola

Będziesz musiał zbudować swój $set modyfikator programowo:

var modifier = { $set: {} };
modifier.$set['companies.' + companyid] = { desksmemberships:[] };

A następnie użyj modifier jako trzeci parametr w Twoim findAndModify zadzwoń.

Możesz także rozważyć zmianę companies być tablicą zamiast osadzonego obiektu.

Aktualizacja Node.js 4.x

Możesz teraz użyć składni obliczonej właściwości, aby zrobić to bezpośrednio w literale obiektu:

collection('users').findAndModify(
    {username: usern}, 
    [['_id', 'asc']], 
    {$set:{['companies.' + companyid]: { desksmemberships:[] }}},    
    {new: true},
    function(){...});


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Czy możesz określić klucz dla $addToSet w Mongo?

  2. Jak skonstruować i przekazać dokument bson - Go lang?

  3. Wykonywanie Mongo jak Query (JSON) przez Javę

  4. WiredTiger i aktualizacje na miejscu

  5. MongoDB $i operator potoku agregacji