MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Kesalahan luwak:Tidak dapat memperbarui __v dan __v secara bersamaan

Saya sarankan Anda memasukkan logika penghapusan terkait _id ke dalam file definisi Skema model luwak Anda:

var UserSchema = new mongoose.Schema(fieldDefinitions);

// Ensure virtual fields are serialised.
UserSchema.set('toJSON', {
    virtuals: true
});

// Ensure able to see virtual fields output when using console.log(obj)
UserSchema.set('toObject', {
    virtuals: true
});

UserSchema.options.toJSON = {

    transform : function(doc, ret, options) {

        console.log('--> ' + require('util').inspect( ret._id.id ));

        ret.id = ret._id.id;
        delete ret._id;
        delete ret.__v;

        return ret;
    },
    virtuals: true
};

Kemudian dalam panggilan balik Anda, jalankan toJSON :

var processedJson = resultDoc.toJSON();

untuk mengambil versi yang diproses yang menyembunyikan logika yang dapat digunakan kembali dengan baik.
CATATAN :toJSON() juga dieksekusi secara ajaib oleh JSON.stringify()




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. kesalahan penguraian JSON mongoexport

  2. Periksa Apakah bidang ada dalam sub-dokumen dari Array

  3. MongoDB $pesanBoleh

  4. 7 Cara Menghitung Dokumen di MongoDB

  5. Bagaimana cara menanyakan MongoDB langsung dari Ruby alih-alih menggunakan Mongoid?