Python 获取引用对象';s ID而不获取它

Python 获取引用对象';s ID而不获取它,python,mongodb,mongoengine,Python,Mongodb,Mongoengine,假设我有一个名为Post的MongoEngine文档类: class Post(Document): author = ReferenceField(Author) 如何在不获取实际作者对象的情况下获取文章的作者ID 如果我写 print post.author.id MongoEngine对数据库进行查询以获取author对象。我会写字 print post._data["author"] 如果Author字段已被取消引用,则返回Author对象,否则返回DBRef对象 有标准的

假设我有一个名为Post的MongoEngine文档类:

class Post(Document):
    author = ReferenceField(Author)
如何在不获取实际作者对象的情况下获取文章的作者ID

如果我写

print post.author.id
MongoEngine对数据库进行查询以获取author对象。我会写字

print post._data["author"]
如果
Author
字段已被取消引用,则返回Author对象,否则返回DBRef对象

有标准的方法吗?

如何:

post.to_mongo()['author'].id
那么:

post.to_mongo()['author'].id

是的,应该行。非常感谢。但是,除了给我id之外,它在每次访问中都做了很多事情。为了提高效率,我宁愿将
self.\u data[“author”].id
封装在Post类中的方法中。是的,这应该行得通。非常感谢。但是,除了给我id之外,它在每次访问中都做了很多事情。为了提高效率,我宁愿将
self.\u data[“author”].id
封装在Post类的方法中。