python - 如何使用mongoengine只查询mongo库的部分字段, 而不是全部字段?
PHP中文网
PHP中文网 2017-04-17 17:45:04
0
2
562

一般使用mongoengine会查询符合条件的所有的文档(即文档里的所有字段都会查询出来),现在只想查出文档里的部分字段, 并且保持查询效率不能降低

问题补充:这里提到的问题是使用django + mongoengine模块来查询mongodb数据库, 不是直接使用类似pymongo这样的模块来查询,如何查出部分字段, 并保持较高效率?

PHP中文网
PHP中文网

认证0级讲师

répondre à tous(2)
大家讲道理

Utilisez le deuxième paramètre de find.
Données

{
    "_id" : ObjectId("56ceaff4a442fd22fec343ce"),
    "edit_info" : {
        "edited_on" : ISODate("2010-02-25T07:40:36.017Z"),
        "edited_by" : NumberLong(137),
        "original" : ObjectId("56ceaff4a442fd22fec343ce"),
        "previous" : null
    },
    "type" : "problem",
    "schema_version" : 1
}

Instruction de requête

db.getCollection('modulestore.definitions').find({_id:ObjectId("56ceaff4a442fd22fec343ce")})

Résultats de la requête

{
    "_id" : ObjectId("56ceaff4a442fd22fec343ce"),
    "block_type" : "problem"
}

Construisez un index lorsque vous lisez plus et écrivez moins.

左手右手慢动作
# comments - skip 5, limit 10
Page.objects.fields(slice__comments=[5, 10])

La méthode des champs de la classe QuerySet ne peut obtenir que les champs requis

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal