MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

променлива с mongodb точка

Трябва да създадете вашия обект с променлив ключ отделно, защото JS преди ES2015 не позволява нищо друго освен постоянни низове в синтаксиса на обектния литерал:

var stuffID = 5
var stuff = {};                 // create an empty object
stuff['stuff.' + stuffID] = 1;  // and then populate the variable key

collection.update({
    "id": id,
}, {
    "$inc": stuff               // pass the object from above here
}, ...);

РЕДАКТИРАНЕ в ES2015 вече е възможно да се използва израз като ключ в обектен литерал, като се използва [expr]: value синтаксис и в този случай също използвайки ES2015 обратна интерполация на низ:

var stuffID = 5;
collection.update({
    "id": id,
}, {
    "$inc": {
        [`stuff.${stuffID}`]: 1
    }
}, ...);

Кодът по-горе работи в Node.js v4+



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Неуспешно удостоверяване на Python Pymongo

  2. Redis срещу MongoDB:Какво трябва да знаете

  3. Запазване на списък с интерфейсни обекти, използващи mongo драйвер за java

  4. Как да клонирате/копирате база данни в Azure Cosmos DB

  5. Как да видя заявките, изпълнявани от моя mongodb?