小编Sul*_*rza的帖子

Mongoose save()不更新数据库文档中数组的值

我正在尝试使用GUI更新集合(单元)中的文档,并在更新后,我想更新集合(用户)中的值(user.Units,它是一个单元名称数组).如果数组长度只是1个元素,它会更新并显示在数据库中,一切运行良好,但是当单元数组有多个元素时,我尝试通过for循环更新它,它显示它会更新但是当我检查数据库它仍然没有更新.

当我通过循环更新值时,我真的无法弄清楚为什么它不更新数据库.

整个编辑和更新功能: -

 edit_unit: function (req, res, next) {
    var Data = req.body;

    Client_data.Unit.findById(req.params.unitId, function (err, unit) {
        var error = false;
        if (err) {
            error = err;
        } else if (!unit) {
            error = "FATAL: unable to look up Unit #" + req.params.unitId;
        } else {

            switch(req.body.name) {
                case 'Icon':
                    var Icon = unit.Icon;

                    User.find({"Units":Icon}, function (err, users) {
                        if (err)
                        console.log(err);

                        users.forEach(function (u) {
                            if (u.Units.length > 1) {
                            for (var i = 0; i <= u.Units.length; …
Run Code Online (Sandbox Code Playgroud)

arrays for-loop mongoose mongodb node.js

32
推荐指数
2
解决办法
1万
查看次数

标签 统计

arrays ×1

for-loop ×1

mongodb ×1

mongoose ×1

node.js ×1