У меня есть набор транзакций, которые имеют количество, описание, тип (дебет/кредит) и категории (домашний, автоматический, разный и т. Д.). Я пытаюсь отфильтровать свои результаты, чтобы показать только «домашнюю» категорию в этом примере. У меня есть другое представление, которое отображает все результаты моей коллекции. Ниже я попытался создать новую коллекцию «results», а затем вывести ее в свой шаблон handlebars.Фильтрация коллекции с магистралью MV *
render: function() {
var results = this.collection.where({category: "home"});
var filteredCollectionHome = new Backbone.Collection(results);
this.$el.html(this.template({filteredCollectionHome: this.collection.homeView(true)}));
}
ДомView находится внутри моего коллекционного файла.
homeView: function (toJSON) {
this.sortByDate(-1); // descending so latest are first
if(!toJSON) {
return this.models;
} else {
var models = this.models,
idx = -1,
json = [],
model;
while(model = models[++idx]) {
json.push(model.attributes);
}
return json;
}
},
Я думаю, вам нужно использовать findWhere, вместо того, чтобы просто где ... – LouisK