更新Backbone集合上的模型功能

时间:2015-07-31 00:29:58

标签: javascript backbone.js

我在所有Backbone集合的超类上创建了这个函数:

updateModel: function (_id, updateInfo) {
    for (var i = 0; i < this.models.length; i++) {
        var model = this.models[i];
        if (String(model.get('_id')) == String(_id)) {
            model.set(updateInfo);
            break;
        }
    }
},

该函数的目的是在给定服务器定义的_id属性的情况下简单地更新模型。

我写的函数有用吗?或者我应该简单地使用它:

collection.add(model, {merge: true});

1 个答案:

答案 0 :(得分:1)

试试这个:

updateModel: function (_id, updateInfo) {
    this.some(function (oneModelInfo) {
        if (_id == oneModelInfo._id) {
            oneModelInfo.set(updateInfo);
            return true;
        }
    });
},