Rob*_*itt 12 arrays unique mongoose
目前正在追踪Mongoose和MongoDB的一个项目,但遇到了一个API尚不清楚的部分.
我有一个模型,其中包含几个键和文档,以及其中一个键被调用watchList.这是一个用户正在观看的ID数组,但我需要确保这些值保持独特.
以下是一些示例代码:
var MyObject = new Mongoose.Schema({
//....
watching : {type: Array, required: false},
//....
});
Run Code Online (Sandbox Code Playgroud)
所以我的问题是如何确保推入数组的值只存储一个,所以使值唯一,我可以使用unique: true吗?
谢谢
fra*_*der 14
据我所知,在mongoose中执行此操作的唯一方法是调用底层的Mongo运算符(由danmactough提到).在猫鼬中,看起来像:
var idToUpdate, theIdToAdd; /* set elsewhere */
Model.update({ _id: idToUpdate },
{ $addToSet: { theModelsArray: theIdToAdd } },
function(err) { /*...*/ }
);
Run Code Online (Sandbox Code Playgroud)
注意:此功能需要mongoose版本> = 2.2.2