骨干模型并不总是设置正确的数据

时间:2015-01-21 09:09:19

标签: javascript backbone.js backbone-model

我有一个骨干模型,它混合了单个属性,其他模型和集合。

要在父模型场景中创建此模型和集合,我的模型代码如下所示

App.Models.Project = Backbone.Model.extend({

urlRoot: "http://" + App.API_ROOT + "/project",

defaults: {
    visible: true
},

initialize: function() {

    var clients = this.get('clients');
    var pm = this.get('projectmanager');
    this.set('project_manager', new App.Models.User(pm));

    var sp = this.get('salesperson');
    this.set('sales_person', new App.Models.User(sp));

    this.set('clients', new App.Models.Client(clients));

    this.set('status_text', this.getStatusText(this.get('status')));

},

getStatusText: function(status) {
    switch(status) {
        case "0":
            return 'Archived';
        break;
        case "1":
            return 'Pending';
        break;
        case "2":
            return 'Active';
        break;
        case "3":
            return 'Complete';
        break;
    }
}

});

然而,偶尔会返回一个模型,其中客户端属性尚未设置为模型,但仍保留为对象,为什么会这样?有没有更好的方法来实现我的目标?父模型中的模型和集合?

0 个答案:

没有答案