2012-07-05 29 views
7

Birkaç haftalığına Marionette kullanıyorum ve sadece Backbone Relational'ı keşfettim, bu yüzden ikisini nasıl bütünleştireceğimi anlamaya çalışıyorum. Her 'madde' kendi öğe görünümü vardır nereye İdeal olarak, bu gibi yapılandırılmıştır verileri işlemek için bir kompozit görünümü kullanmak istiyorum: Kompozit manzaralı NormaldeOmurga Kümesi ve İlişkisel ile Kompozit Görünümleri Kullanma

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

Eğer modelleri koleksiyonu olması gerekir işte bu her bir öğeyi işlemek için yineleyecek. İlişkisel olarak, sadece bir modelim var (liste) ve bu modelin içinde bir koleksiyon (öğeler) var. Bunu Marionette'ın görüşlerini kullanarak yapmak mümkün mü yoksa basit bir Omurga görünümü kullanmalı ve oluşturma ve yinelemeyi kendim halletmem gerekir mi?

cevap

19

Bu oldukça yaygın ve yapılması kolaydır. CompositeView tanımınızda, başlatma yönteminde kullanılacak koleksiyonu belirtebilirsiniz.


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

    initialize: function(){ 
    this.collection = this.model.get("childcollection"); 
    } 
}); 
+8

Ve bundan çok daha güvenilir bir yanıt alamayacaksınız :) –

+0

Girdiğiniz için teşekkürler! Mükemmel çalışıyor. –

İlgili konular