一个阵列到骨干集合

时间:2015-03-07 11:30:15

标签: backbone.js backbone-views backbone-collections

我认为这是一个简单的问题。它是基于这个问题。

Filter and sort backbone collection with array of ids

router.on('route:reportCollection', function(assetid) {

    var asset = assets.get(assetid);
    var reportpointers = asset.get('reportsid');

    var filteredReportCollection = new dilzeemQ.Collections.FilteredReportCollection({

    });

    ohhyearh = filteredReportCollection.filterById(reportpointers);

    var reportCollectionView = new dilzeemQ.Views.ReportCollection({
        collection: ohhyearh
    });

    console.log(ohhyearh);
    console.log(reports);


    $('#pagecontent').html(reportCollectionView.render().$el);
});

除了传递collection : ohhyearh

之外,我已按照我的意愿开始工作

ohhyearh就像这样[child,child],我认为它正在期待这个{child,child}

的内容

1 个答案:

答案 0 :(得分:1)

在您将ohhyearh传递给视图时,它应该是instanceof Backbone.Collection。这就是视图所期望的,而不是具有每个子项的属性的数组或对象。

根据代码段中的代码,我会说你的filterById函数可能正在做一些意想不到的事情并且没有返回实际的集合。您可以将其修改为return new dilzeemQ.Collections.FilteredReportCollection(models),也可以保留原样,并在将新集合传递给视图时创建新集合:

collection: new dilzeemQ.Collections.FilteredReportCollection(ohhyearh)

这假设您的ohhyearh对象是一个带有Backbone.Model实例的数组。您可以将一组模型传递给集合构造函数以获取这些模型的集合。