मैं MongoEngine से परिचित नहीं हूं, लेकिन $ प्रोजेक्शन ऑपरेटर केवल मिलान किए गए तत्व को दिखाने के लिए एक सरणी को फ़िल्टर कर सकता है। मोंगो शेल में:
> db.foo.insert({"items": [{"id": 1}, {"id": 2}, {"id": 3}]})
> db.foo.find({'items.id': 1}, {'items.$': true})
{ "_id" : ObjectId("51ce29b68b178484ff2a01ed"), "items" : [ { "id" : 1 } ] }
अधिक जानकारी:http://docs.mongodb.org/manual/reference/projection /स्थिति/
ऐसा लगता है कि MongoEngine में आप ऐसा करते हैं:
Foo.objects(__raw__={'items.id': 1}).only('items.$')
अधिक:http://mongoengine-odm.readthedocs .org/hi/latest/guide/querying.html#raw-queries