MongoDB:在Mongoose中删除数组对象

蜂蜜

我有以下架构:

var userSchema = mongoose.Schema({

    local            : {
        email        : String,
        password     : String,
        movies       : [{
                          moviename   : String,
                          rating      : Number
                        }],
    }

});

我使用以下方式将条目添加到数组中:

user.local.movies.push({ moviename  : "Top Gun", rating     : 80});
user.save(function (err) {
                if (err)
                    console.log("Error in saving");

                res.end(0);
            });

但是我也需要删除条目。我需要能够通过“电影名称”名称删除条目。我尝试使用pull

 user.local.movies.pull({ moviename  : "Top Gun"});

但它没有用。

有人可以让我知道如何从阵列中删除条目吗?

谢谢你。

香港强尼

我认为使用显式update调用代替Mongoose的数组操作方法会更容易一些,后者并不总是如您所愿:

User.update({_id: user._id}, 
    {$pull: {'local.movies': {moviename: 'Top Gun'}}}, callback);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章