gpt4 book ai didi

mongodb - 如何删除mongodb ODM中不存在的引用文档

转载 作者:可可西里 更新时间:2023-11-01 09:45:44 24 4
gpt4 key购买 nike

mongodb 有点新。我知道 mongodb 对引用没有限制。那么,如果我有一个不存在的引用文档,我该如何删除它?

例如:

{
_id: ObjectId("51619a758ead0e6765000004"),
createdAt: ISODate("2013-04-08T00:10:29+08:00"),
works: [ { $ref: "products", $id: ObjectId("51619a758ead0e6765000007"), $db: "ihome", type: "product" } ]
}

所引用的产品已被删除。我不知道如何从作品中提取它?我在下面尝试但没有工作:

$dm->createQueryBuilder('SupplierBundle:Supplier')
->update()
->field('id')->equals('51619a758ead0e6765000004')
->field('works.$id')->pull(new \MongoId('51619a758ead0e6765000007'))
->getQuery()
->execute();

提前致谢。

最佳答案

好的。我找到了如何做到这一点:

$dm->createQueryBuilder('SupplierBundle:Supplier')
->update()
->field('id')->equals('51619a758ead0e6765000004')
->field('works')->pull(array('$id' => new \MongoId('51619a758ead0e6765000007')))
->getQuery()
->execute();

关于mongodb - 如何删除mongodb ODM中不存在的引用文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15869804/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com