$ addToSet with create [Mongoose]

时间:2016-11-27 13:48:03

标签: node.js mongodb express mongoose

我需要做这样的事情:

Code.create({
            childCode: {"$addtToSet": code.child},
            parentCode: code.parent
        }

但这不起作用,对此有什么解决方案吗?

我需要在childCode ...

中添加唯一的ObjectId

1 个答案:

答案 0 :(得分:1)

$ addToSet只能与update()和findAndModify()一起使用。你不想做什么。

$ addToSet运算符向数组添加一个值,除非该值已经存在,在这种情况下$ addToSet对该数组不执行任何操作。

你不能在创建中使用它的原因是因为文件实际上并不存在于mongoDB中,并且$ addToSet不知道它需要操作的任何数组字段。

如果您的目标是消除重复的code.child,那么您可能需要在node.js代码中限制它。