【发布时间】:2014-06-20 11:34:13
【问题描述】:
使用 mongoengine,我如何限制我的查询,以便其中一个字段是子文档中的变量。
也就是说,Mongo查询相当于什么
db.sample.find({ dataset: 'DATASET1' }, { 'dataset': 1, 'sampleid': 1, 'variables.Alb': 1 })
返回如下结构:
{
"_id" : ObjectId("53a398561d41c85904e58d81"),
"dataset" : "DATASET1",
"sampleid" : "ID1001",
"variables" : {
"Alb" : 0.09791
}
}
我希望 mongoengine 语法类似于
Sample.objects.filter(dataset='DATASET1')
.only('dataset')
.only('sampleid')
.only('variables.Alb')
这会产生一个错误:
AttributeError: 'str' object has no attribute 'db_field'
我做错了什么?我看到还有执行__raw__ 查询的选项,但它不接受字典数组。
【问题讨论】:
标签: python mongodb mongoengine