我目前正在尝试为MongoEngine中的嵌入式文档编写通用的删除方法。我认为可以访问包含嵌入式文档的文档对象,并根据父文档定义删除功能。
然后,删除功能可能如下所示:
def delete():
{parent_document}.update(pull__myField={self})
我还不确定这是否真的可以按照我想象的方式工作,但我认为值得尝试。我唯一不知道的是如何访问嵌入文档所在的文档。因此,基本上我必须以某种方式从嵌入式文档访问上面代码中称为parent_document
的文档。
有人知道如何执行此操作吗?如果有人这样认为,通常这可能不是一个好主意,请让我知道。
答案 0 :(得分:1)
如果要访问父文档,则可以在嵌入式文档中使用self._instance
。