【问题标题】:update an internal schema with mongoose使用 mongoose 更新内部架构
【发布时间】:2015-02-22 19:55:41
【问题描述】:

我在更新包含在其他架构中的架构中的成员时遇到问题。

var User = new mongoose.Schema({
first_name               : { type: String, required: true , lowercase: true},
last_name                : { type: String, required: true , lowercase: true},
log                      : { type: [Log], default:  [Log] },
});


var Log = new mongoose.Schema({
left_groups                     : [{ type: mongoose.Schema.Types.ObjectId, ref: 'Group' }],
});

我正在尝试更新 left_groups 成员(来自用户),它是对组架构的引用,但我不能这样做。

在网上研究后,我想出的最好的是:

User.update({_id: "549a972f243a461c093f8ebb"}, {log:{$push:{left_groups: gr}}}, function ()     {
        console.log("updated")
    });

这似乎不适合我。

//gr[0] 表示组。

【问题讨论】:

    标签: node.js mongodb mongoose mean-stack


    【解决方案1】:

    我成功了..

    我不确定这是一个合适的解决方案:

    Group.findOne({_id: "549b18c73117388028c3990f"}, function (err, gr) {
        User.findOne({_id: '549b18c73117388028c39904'}, function(err, user){
            user.log[0].left_groups.push(gr);
            user.save();         
        });
    })
    

    【讨论】:

      猜你喜欢
      • 2020-03-12
      • 2012-02-10
      • 2021-07-09
      • 2015-12-15
      • 2017-06-24
      • 1970-01-01
      • 1970-01-01
      • 2014-09-14
      • 2013-03-30
      相关资源
      最近更新 更多