我想将元素放入和放出数组
我在用户架构中创建了一个数组,并在每次添加项目时在用户的数组中添加_id
我用$ push
做了这个我发现mongodb文档中使用了$ pull来从数组中删除
该文件应该与$ push
一样使用但它没有工作
https://docs.mongodb.com/manual/reference/operator/update/pull/
exports.remove_list = (req, res) => {
const {item_id, user_id} = req.body
const remove_id = () => {
return User.remove_item_list(user_id, item_id)
}
const respond = () => {
res.json({
message: 'remove bucket list successfully'
})
}
const onError = (error) => {
res.status(409).json({
message: error.message
})
}
Bucket.deleteOneBy_id(item_id)
.then(remove_id)
.then(respond)
.catch(onError)
}
deleteOneBy_id是_id
删除文档这是remove_item_list代码
User.statics.remove_item_list= function(user_id, item_id){
return this.update({_id: user_id}, {$pull: {'item_list': item_id}})
}
这是我的架构代码
const User = new user_Schema({
email: {type:String, required:true, unique:true},
password: {type:String, required:true},
item_list:{type:Array}
});
我用来测试的邮递员代码
{
"user_id":"5b122609f8d6901c244dfc76",
"item_id":"5b14dc68cfa0732464334b2f"
}
以上值是存储在mongodb
中的_id值的副本我查了几个文件,发现我的$ pull
没有问题但它没有用,似乎有一个我不知道的问题
如果你知道原因,请告诉我