跳到主要内容
CNode

求一mongodb的插入语句($addToSet)

社区
Rromboo发布于 13 年前最后回复 13 年前
2121010

如果结构如下: new Schema({ memberId: ObjectId, categories: [{name: String, type: String}] })

现在要给memberId为xxx的插入一条数据,但如果name与type已经存在时,则不插入。 例: 数据库的categories已经存在一条记录,{name: 'default', type = 'in'},这时候插入一条{name: 'default', type: 'out'},是可以插入的,因为type不一致,但如果插入一条{name: 'default', type: 'in'}应该无法插入,因为{name: 'default', type = 'in'}已经存在。

求写法,谢谢

查看回复

回复 (2)

S
showen#213 年前

collection.update({"Guid":Guid},{$set:{"imageCode":imageCode,"date":date}},{upsert:true},function(err) { if(err) { logger.error("imageCode:"+imageCode+"date:"+date+" "+err); } else {

}

});

参考我这个吧,主要是upsert这个设置。如果存在则更新,不存在则添加。

E
echo2600#113 年前

xxxSchema.pre('save', function(next){ ...checkLogic... })

参与回复

登录后即可参与回复。登录