Как обрабатывать вложенный CompositeView с помощью Backbone.Marionette?

знакомство с крупномасштабными структурами данных с помощью Backbone и случаи, когда данные были бы хорошо представлены через CompositeViews; то есть CollectionViews с добавлениемдобавлен пух " вокруг них, такие как заголовки, кнопки и так далее.

Однако я'Я испытываю большие трудности во вложении CompositeViews друг в друга. Использование стандартного свойства itemView в CompositeView для визуализации другого CompositeView неКажется, стреляют вообще.

Предположим, у меня естьродительский ItemViewсоздан как таковой (следующийДерик Бейлипример с; Предположим, что этот верхний уровень, где начальныйfetch() по коллекции будет называться)

var User = Backbone.Model.extend({});

var UserCollection = Backbone.Collection.extend({
    model: User
});

var userList = new UserCollection(userData);

var schedulerCompositeView = new SchedulerCompositeView({
    collection: userList
});

schedulerCompositeView.render();

this.ui.schedulerWidget.html(schedulerCompositeView.el);

А такжеSchedulerCompositeView выглядит так:

return Backbone.Marionette.CompositeView.extend({
    template: Handlebars.compile(schedulerCompositeViewTemplate),
    itemView: SchedulerDetailCompositeView,
    appendHtml: function (collectionView, itemView) {
        collectionView.$("#schedulerGroups").append(itemView.el);
    }
});

И наконец,SchedulerDetailCompositeView:

return Backbone.Marionette.CompositeView.extend({
    template: Handlebars.compile(schedulerDetailCompositeViewTemplate),
    itemView: SchedulerDetailItemView,
    appendHtml: function (collectionView, itemView) {
        collectionView.$("#schedulerDetailStops").append(itemView.el);
    }
});

SchedulerDetailCompositeView никогда не создается; на самом деле, егоappendHtml() метод никогда не срабатывает вообще.

Ясно тамздесь отсутствует какая-то другая информация; очевидно, цель состоит в том, чтобы передать коллекцию / модель в SchedulerDetailCompositeView, но яЯ не совсем уверен, какова правильная техника для этого, из-за вложенных CompositeViews.

Для справки, здесьэто грубый макет структуры I 'я пытаюсь достичь; если бы был лучший способ достижения этой цели, чем вложенные CompositeViews, ям конечно все уши

http://jsfiddle.net/KAWB8/

Ответы на вопрос(1)

Ваш ответ на вопрос