MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Objekt in mongodb überschreiben

Ich glaube, Ihr Problem stammt von dieser Zeile:[field]: object . Ich glaube nicht, dass dies eine geeignete Methode ist, um dynamisch auf das Feld eines Objekts zuzugreifen. Versuchen Sie stattdessen, das Feld wie folgt dynamisch zu aktualisieren:

'updateOneWorkflow': function(id, field, object) {
    this.unblock;
    if (Meteor.userId()) {
        var _username = Meteor.user().username;
        var newObj = {
            "metadata": {
                "last_modified_dt": new Date(),
                "modified_by": Meteor.userId(),
                "modified_by_username": _username
            }
        };
        newObj[field] = object;
        MYCOLLECTION.update({
            _id: id
        }, {
            $set: newObj
        });
    } else {
        throw new Meteor.Error(403, "You are not authorized to perform this function");
    }
}