标签: mongodb
使用这样的架构:
{ "_id" : ObjectId("513fe2b85b51eafc15000023"), "tags" : [ "House", "Red" ] }
您将如何执行以下操作:
如果标签存在,请删除它,如果它不存在则添加它。
答案 0 :(得分:1)
运营商$addToSet和$pull。 $addToSet只会添加标记(如果不存在)。 $pull将删除标记的所有实例。
$addToSet
$pull
正如@assylias所提到的,您将使用_id推测构建完整更新命令,或与{tags: tagInQuestion}一起构建仅对具有tagInQuestion等的文档进行操作。
_id
{tags: tagInQuestion}
tagInQuestion