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

Неуспешна актуализация на вложен документ Mongoose?

Не използвате правилните имена на полета във вашия B.update повикване. Вместо това трябва да е това:

B.update(
    { 'PDFs._id': pdf_id },           // <== here
    { $set: {
        'PDFs.$.title': 'new title'   // <== and here
    }}, function (err, numAffected) {
        if(err) throw err;
        assert.equal(numAffected,1);
    }
);

Трябва също да поправите своя reset функция, за да не извиква обратното си извикване до save завършва:

function reset(cb) {
  B.find().remove();
  // create some data with a nested document A
  var newA = new A( { title : "my title" })
  var newB = new B( { PDFs: newA});
  newB.save(cb);  // <== call cb when the document is saved
}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Кеширане на MongoDB връзки в Django

  2. деинсталирайте драйвера на mongodb php и инсталирайте различна версия

  3. Условно групиране с $ съществува вътре в $cond

  4. Не може да се удостовери потребител в MongoDB 3.0.2 чрез java връзка

  5. Spring data mongodb заявка за поле на поддокумент