And*_*son 2 python django mongodb pymongo mongoengine
例如..在Mongodb ..
> db.test.findOne({}, {'mapField.FREE':1})
{
"_id" : ObjectId("4fb7b248c450190a2000006a"),
"mapField" : {
"BOXFLUX" : {
"a" : "f",
}
}
}
Run Code Online (Sandbox Code Playgroud)
'mapField'字段由Mongoengine的MapField组成.'mapField'字段有一个键和数据的日志..但我只检索'BOXFLUX'..
这个查询在MongoEngine中不起作用....例如..
BoxfluxDocument.objects( ~~ querying ~~ ).only('mapField.BOXFLUX')
Run Code Online (Sandbox Code Playgroud)
你可以看到.. 只有('mapField.BOXFLUX') 或只有('mapField__BOXFLUX')不起作用.它检索所有'mapField'数据,包括'BOXFLUX'一个..
如何只检索MapField的字段???
我看到有一张票:https://github.com/hmarr/mongoengine/issues/508
为我工作的是一个示例测试案例:
def test_only_with_mapfields(self):
class BlogPost(Document):
content = StringField()
author = MapField(field=StringField())
BlogPost.drop_collection()
post = BlogPost(content='Had a good coffee today...',
author={'name': "Ross", "age": "20"}).save()
obj = BlogPost.objects.only('author__name',).get()
self.assertEquals(obj.author['name'], "Ross")
self.assertEquals(obj.author.get("age", None), None)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3726 次 |
| 最近记录: |