# Issue
model 中自定义主键,是为某个 field 添加 primary_key 属性,mongoengine 会把该字段作为 _id 存储。此时通过 obj.field 或 obj.id 都可获取到该字段,但是实际查询的时候使用 obj.id 方法会出错,例如:
MyObject.objects.get(id=1)
# Solution
根据官方文档,设置属性 primary_key=True 后,可用 pk 来获取该字段,实际上 primary 也是可用的,所以
MyObject.objects.get(pk=1)
MyObject.objects.get(primary=1)
这两种查询都是可行的