我有一个如下的数据库模型:
class Image(mongoengine.Document):
project = mongoengine.ReferenceField('Project', required=True,
reverse_delete_rule=mongoengine.CASCADE)
next = mongoengine.ReferenceField('self', required=False)
prev = mongoengine.ReferenceField('self', required=False)
name = mongoengine.StringField(unique_with='project', required=True)
created_on = mongoengine.DateTimeField(default=datetime.utcnow())
有两个字段引用同一模型。
只是为了测试有效性,我删除了其中一个,然后尝试保存 Image 对象,它起作用了,但是当 next 和 prev 都在 dbmodel 中时,在这种情况下,在保存图像对象时出现错误:
ValidationError: None is not a valid ObjectId.
如何解决这个问题?mongoengine 不支持有两个自引用 dbfields 吗?
任何帮助将非常感激。