¿Cómo manejar CompositeView anidado usando Backbone.Marionette?

Me estoy incorporando a estructuras de datos a gran escala con Backbone, y me encontraré con ocasiones en que los datos estarán bien representados a través de CompositeViews; es decir, CollectionViews con la adición de "pelusa agregada" alrededor de ellos, como encabezados, botones, etc.

Sin embargo, tengo muchas dificultades para anidar CompositeViews uno dentro de otro. El uso de la propiedad itemView estándar en un CompositeView para representar otro CompositeView no parece estar disparando en absoluto.

Supongamos que tengo unelemento primario ver, instanciado como tal (siguiendoEl ejemplo de derick bailey; Supongamos que este nivel superior es donde el inicialfetch() en la colección se llamaría):

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);

YSchedulerCompositeView se ve como tal:

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

Y finalmente,SchedulerDetailCompositeView:

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

SchedulerDetailCompositeView nunca se crea una instancia; de hecho, esappendHtml() El método nunca parece dispararse en absoluto.

Claramente hay alguna otra información que falta aquí; obviamente, la intención es pasar una colección / modelo a SchedulerDetailCompositeView, pero no estoy realmente seguro de cuál es la técnica adecuada para hacerlo, debido a las Visitas compuestas anidadas.

Para referencia, aquí hay una maqueta aproximada de la estructura que estoy tratando de lograr; Si hay una mejor manera de alcanzar este objetivo que CompositeViews anidadas, ciertamente soy todo lo que oigo:

http://jsfiddle.net/KAWB8/

Respuestas a la pregunta(1)

Su respuesta a la pregunta