骨干重组模型

时间:2014-04-30 10:10:20

标签: javascript backbone.js backbone-model

您好我的骨干模型看起来像这样,

    Project {cid: "c2", attributes: Object, _changing: false, _previousAttributes: Object, changed: Object…}
    _changing: false
    _pending: false
    _previousAttributes: Object
    attributes: Object
        brief: ""
        colour: "#2a5563"
        created: "2014-04-22 16:15:57"
        created_by: "Me"
        creator_id: "14"
        dates: Array[1]
        files: Array[8]
        items: Array[7]
        progress: "0"
        project_id: "7692"
        project_name: "Rendering on new task"
        status: "1"
        tasks: Array[1]
    __proto__: Object
    changed: Object
    cid: "c2"
    __proto__: ctor

items数组需要一个模型,items数组当前由多个对象组成,每个对象都有一个名为subitems的属性 - 这个属性是一个数组,但我认为它需要是一个集合,实际上每个想想除了item数组之外的其他东西。

这样做的最佳方式是什么?

1 个答案:

答案 0 :(得分:1)

您可以将项目设为具有一组项目的Backbone集合。使用

var itemsArray = project.get('items');
itemsArray.each(function (item) {
    item = new Item();//collection/model.
});
var items = new Items(itemsArray);//Items is a backbone collection.
project.set('items', items);

并可以将其作为

进行访问
project.get('items');

通过这种方式,您可以嵌套任意数量的集合/模型。