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

Mendapatkan kamus di dalam daftar dengan kunci di mongoDB (mongoengine)

Saya tidak terbiasa dengan MongoEngine, tetapi operator proyeksi $ dapat memfilter array untuk hanya menampilkan elemen yang cocok. Dalam cangkang Mongo:

> db.foo.insert({"items": [{"id": 1}, {"id": 2}, {"id": 3}]})
> db.foo.find({'items.id': 1}, {'items.$': true})
{ "_id" : ObjectId("51ce29b68b178484ff2a01ed"), "items" : [  {  "id" : 1 } ] }

Info lebih lanjut:http://docs.mongodb.org/manual/reference/projection /posisi/

Tampaknya di MongoEngine Anda melakukannya:

Foo.objects(__raw__={'items.id': 1}).only('items.$')

Lebih lanjut:http://mongoengine-odm.readthedocs .org/en/latest/guide/querying.html#raw-queries



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Spring Data MongoDB - Di mana membuat indeks secara terprogram untuk koleksi Mongo?

  2. Aplikasi berfungsi dalam pengembangan tetapi tidak saat digunakan ke heroku

  3. Membaca array di mongodb?

  4. Identifikasi dokumen terakhir dari kumpulan hasil find() MongoDB

  5. Sisipan massal Pymongo