MongoEngine - 如何使用 ObjectID 从 GridFs 获取文件

MongoEngine - How to get files from GridFs using ObjectIDs

当每个文档包含一个文件(使用 GridFS)时,我有一个特定的文档集合。

我使用聚合方法从该集合中检索特定文档。
当每个文档都表示为字典时,聚合方法返回了一个文档列表。
因此,当我尝试从字典中获取文件时,它 returns 我是一个 ObjectID 对象(而不是常规查询方法中返回的文件对象)。

问题是,如何使用此 ObjectID 获取文件对象?
换句话说,是否有一种简单的方法可以仅使用 ObjectID(不参与 GridFS 中文件块的合并)documentation 中所示的实际文件对象

谢谢。

解决方法是直接使用GridFSProxy对象,将文件Object ID作为参数:

import mongoengine
.
.
file_obj = mongoengine.GridFSProxy(FileID)