2012-07-05 23 views
7

Tôi đã sử dụng Marionette trong một vài tuần và chỉ phát hiện ra Backbone Relational vì vậy tôi đang cố gắng tìm ra cách để tích hợp cả hai. Lý tưởng nhất, tôi muốn sử dụng một cái nhìn tổng hợp để render dữ liệu được cấu trúc như thế này mà mỗi 'mục' có xem mục riêng của mình:Sử dụng Composite Views với Backbone Marionette và quan hệ

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

Thông thường với tầm hợp bạn cần phải có một bộ sưu tập các mô hình mà nó sẽ lặp lại để hiển thị từng mục. Với quan hệ, tôi vừa có một mô hình (danh sách) và mô hình đó có một bộ sưu tập (các mục) bên trong nó. Có thể để làm điều này ra bằng cách sử dụng quan điểm của Marionette hoặc tôi cần phải sử dụng một cái nhìn Backbone đơn giản và xử lý rendering và lặp lại bản thân mình?

Trả lời

19

Điều này khá phổ biến và dễ thực hiện. Trong định nghĩa CompositeView của bạn, bạn có thể chỉ định bộ sưu tập để sử dụng trong phương thức khởi tạo.


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

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

Và bạn sẽ không nhận được câu trả lời có thẩm quyền nhiều hơn thế nữa :) –

+0

Cảm ơn bạn đã nhập! Hoạt động hoàn hảo. –

Các vấn đề liên quan