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

Вложен масив за попълване на мангуста

Актуализация: Моля, вижте отговора на Trinh Hoang Nhu за по-компактна версия, добавена в Mongoose 4. Обобщено по-долу:

Car
  .find()
  .populate({
    path: 'partIds',
    model: 'Part',
    populate: {
      path: 'otherIds',
      model: 'Other'
    }
  })

Mongoose 3 и по-долу:

Car
  .find()
  .populate('partIds')
  .exec(function(err, docs) {
    if(err) return callback(err);
    Car.populate(docs, {
      path: 'partIds.otherIds',
      model: 'Other'
    },
    function(err, cars) {
      if(err) return callback(err);
      console.log(cars); // This object should now be populated accordingly.
    });
  });

За вложени популации като тази, трябва да кажете на mongoose схемата, от която искате да попълните.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Мангуста:дълбока популация (населете населено поле)

  2. MongoDB $split

  3. Битката на базите данни NoSQL - Сравняване на функциите NoSQL на MongoDB и MSSQL

  4. MongoDB индекс за различни типове

  5. Съхранявайте изображения в база данни на MongoDB