mongoose如何向数组属性添加或者删除文档?

发布于 2022-09-04 21:27:07 字数 358 浏览 9 评论 0

像下面这个例子,如果我要向lists数组继续添加或者删除文档,我应该怎么操作?谢谢!

{
    "_id" : ObjectId("590a77315a7ae88824b296cf"),
    "user" : "yejia@qq.com",
    "password" : "5475442343",
    "lists" : [
        {
            "create_at" : "1234",
            "update_at" : "1234",
            "title" : "yejia",
            "list_id" : 123
        }
    ]
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

pull和push,和MongoDB Node.JS Driver一样的。

参考下面的用法:

Model.update({ }, {’$pull’:{ } } );

Model.update({ }, {’$push’:{ } } );

供参考

Love MongoDB! Have Fun!


Mongoose的pull和push的语法参考如后:

var schema = new mongoose.Schema({ user: 'string', password: 'string', lists: [ {create_at: 'string', update_at: 'string', title: 'string', list_id: 'number'}]});

var User = mongoose.model('User', schema,'test');

//删除
User.update({"user" : "yejia@qq.com"}, 
{'$pull':{ lists : { list_id : 123 }}}, function(err, data){
    if(err) {
        console.log(err);}
    console.log(data);
    });

//添加
User.update({"user" : "yejia@qq.com"}, 
{'$push':{ lists : { create_at: '111', update_at: '222', title: 'test', list_id: 8888}}}, function(err, data){
    if(err) {
        console.log(err);}
    console.log(data);
    });

//打印结果
User.find({},function(err,result){
    console.log(result);
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文