7

我已经使用 Marionette 几个星期了,刚刚发现了 Backbone Relational,所以我试图弄清楚如何将两者结合起来。理想情况下,我想使用复合视图来呈现结构如下的数据,其中每个“项目”都有自己的项目视图:

list : {
  name : 'List 1',
  items : [
    item1 : {
      name : 'Item 1',
      id : 1
    },
    item2 : { ... }
    item3 : { ... }
  ]
}

通常对于复合视图,您需要有一组模型,它将遍历以呈现每个项目。对于关系,我只有一个模型(列表),并且该模型中有一个集合(项目)。是否可以使用 Marionette 的视图将其渲染出来,还是我需要使用普通的 Backbone 视图并自己处理渲染和迭代?

4

1 回答 1

19

这很常见,也很容易做到。在您的 CompositeView 定义中,您可以指定要在初始化方法中使用的集合。


Backbone.Marionette.CompositeView.extend({
  // ...

  initialize: function(){
    this.collection = this.model.get("childcollection");
  }
});
于 2012-07-06T01:09:23.677 回答