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

Node, Mongoose:Hapus elemen json dari hasil kueri dengan delete

Saya pikir apa yang Anda maksud sebagai JSON sebenarnya adalah objek dokumen Mongoose mengingat tag yang Anda tambahkan ke pertanyaan Anda. Karena objek itu dilampirkan ke "skema", Anda mungkin memiliki aturan di sana seperti bidang "wajib" atau semacamnya yang mengganggu operasi yang Anda coba lakukan.

Untuk mendapatkan kembali bentuk mentah dari Object, cukup gunakan .toObject() metode pada hasil dokumen:

Model.findOne({ _id: id}, function(err,doc) {

    var raw = doc.toObject();
    delete raw.element;

    console.log( raw );

});

Tentu saja Anda selalu dapat menghilangkan bidang agar tidak dikembalikan dalam hasil kueri dengan formulir dasar yang disediakan oleh .select() :

Model.findOne({ _id: id}, '-element', function(err,doc) {

    console.log( doc );

});

Bentuk mana pun akan menghapus bidang tertentu dari respons, tetapi jika Anda mungkin ingin lebih mengontrol hasil daripada apa yang dapat disediakan oleh proyeksi bidang dari .select() kemudian gunakan .toObject() bentuk dan manipulasi seperti objek JavaScript biasa.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cara mengelompokkan data menggunakan template mongo

  2. ListCollections dengan autorizedcollection

  3. Bagaimana saya bisa membuat ID unik untuk dokumen yang disematkan di MongoDB?

  4. Nestjs:Skema yang benar untuk larik subdokumen dalam luwak (tanpa _id default atau mendefinisikan ulang ObjectId)

  5. Sesuaikan operasi penyisipan mgo