我試圖使用mongoose的內置indexOf()方法來查看對象id是否存在於doc數組中。但它似乎沒有與對象id一起工作,即使文檔說它應該。MongooseArray#indexOf不與對象id工作
var UserSchema = new Schema({
, following : [{ type: Schema.ObjectId, ref: 'User'}]
, followers : [{ type: Schema.ObjectId, ref: 'User'}]
});
這是給我-1
user1.followers.indexOf(user2._id);
下列數據:
console.log(user1.followers) # => [ '505e2f1de888c7d701000001' ]
conosle.log(user2._id) # => 505e2f1de888c7d701000001
console.log(user1.followers.indexOf(user2._id)) # => -1
我也試圖通過user2來自剛對象,但同樣的問題:
console.log(user1.followers.indexOf(user2)) # => -1
我應該在最後看到1記錄在這裏,而不是-1。
我在做什麼錯?
這是貓鼬文檔: http://mongoosejs.com/docs/api.html#types_array_MongooseArray-indexOf
參數必須是對象。 'user1.followers.indexOf(user2);' – Joonas
仍然不起作用。 - isFollowing ['50680445639190c06a000002','505e2f1de888c7d701000001'] 505e2f1de888c7d701000001 -1 – chovy