Использование составных представлений с Backbone Marionette и Relational

Я использую Marionette в течение нескольких недель и только что открыл для себя Backbone Relational, поэтому я пытаюсь понять, как их интегрировать. В идеале я хотел бы использовать составное представление для отображения данных, структурированных таким образом, где каждый «элемент» имеет свое собственное представление элемента:

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

Обычно с составными представлениями вам нужно иметь коллекцию моделей, которые будут перебираться для рендеринга каждого элемента. С реляционной у меня есть только одна модель (список), и в этой модели есть коллекция (элементы). Можно ли отобразить это с помощью представлений Marionette или мне нужно использовать простое представление Backbone и самостоятельно обрабатывать рендеринг и итерацию?


person Will Hitchcock    schedule 05.07.2012    source источник


Ответы (1)


Это довольно распространено, и это легко сделать. В вашем определении CompositeView вы можете указать коллекцию для использования в методе инициализации.


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

  initialize: function(){
    this.collection = this.model.get("childcollection");
  }
});
person Derick Bailey    schedule 06.07.2012
comment
И более авторитетного ответа вы не получите :) - person Jon Biz; 06.07.2012
comment
Спасибо за отзыв! Работает отлично. - person Will Hitchcock; 06.07.2012