J'essaie de convertir une application en Backbone Marionette et je rencontre un problème de rendu d'une collection d'éléments contenant chacun plusieurs sous-collections.Rendu d'une collection avec plusieurs sous-collections
Contexte:
Je travaille sur une application de carnet d'adresses, la plupart du temps pour mon édification, mais aussi, espérons utile à d'autres. L'écran principal de cette application affiche une liste des contacts de l'utilisateur. Chacun de ces contacts est représenté par une vue avec un seul modèle le supportant. Chacun de ces modèles contient des informations relationnelles supplémentaires stockées en tant que collection sur une propriété du modèle. C'est-à-dire que les numéros de téléphone et les adresses e-mail sont stockés en tant que collection sur chaque contact. Ces relations sont toutes de retour par Backbone Relational et c'est bon.
Le problème:
Ma première pensée en essayant de convertir le point de vue de contact de Backbone.View Marionette était d'utiliser Backbone.Marionette.CompositeView, mais la vue composite ne prend qu'une seule collection. Quelle est la bonne façon de rendre un objet récurrent contenant plusieurs collections?
-ils vraiment besoin d'être collections? Cette approche semble un peu trop sophistiquée. Existe-t-il un point de terminaison API pour les numéros de téléphone? Sont-ils en train de stocker des modèles Backbone ou seulement des primitives Javascript? –
Ils sont en fait des modèles Backbone. Il y a des informations supplémentaires sur chacun d'eux, sinon ils seraient juste des champs directement sur le modèle parent. Je suis sûr que ce dont on a besoin, c'est d'un ajustement de ma façon de penser à Marionette. –
CompositeView ne fonctionnera pas pour la raison que vous avez indiquée, mais vous pouvez facilement créer un ItemView qui gère plusieurs instances de CollectionView. C'est essentiellement ce que fait un CompositeView. –