如何使用MongoKit通过DBRef过滤字段



我想在提取包含DBRef的文档时将字段筛选到该文档中。目标筛选字段是使用DBRef具有关系的子文档。我想要这样的代码。

db.User.find(fields=['_id', 'profile._id', 'profile.text'])

"profile"字段在此示例中使用DBRef。

有人知道吗?

那么每个用户文档都有一个对Profile文档的DBRef?看看MongoKit的来源,在我看来,你想要的是不可能的:

https://github.com/namlook/mongokit/blob/master/mongokit/document.py#L647

看看它是如何用one()(实际上是find())从MongoDB中获取引用的文档的?这就是MongoKit必须在引用的文档中传递一个要包含或排除的字段列表的地方,但MongoKit没有。你可以向作者打开一个功能请求,或者看看你是否可以自己添加并提交一个补丁。

最新更新