我有以下对象
{
"_id" : ObjectId("4b8699aa3b97dc29dd000000"),
"name" : "test",
"email" : "test",
"url" : "test",
"items" : [
{
"$ref" : "item",
"$id" : ObjectId("4b866a043b97dc22a9000001")
}
]}
如何从商品中删除参考?我有objectid作为参考? 我尝试以下,这并用于正常列表项但不与基准工作。
db.foo.update(foo, {$pull: {'items': {'$id': ObjectId("4b866a043b97dc22a9000001") } } })
答案 0 :(得分:1)
问题是版本。在旧版本中,您必须提供所有键和值。在更新到版本1.3.2之后,这不是必需的并且代码有效。
答案 1 :(得分:0)
试试这个:
db.foo.update(foo, {$pull: {'items': {'$id': new ObjectId("4b866a043b97dc22a9000001") } } })