2015-11-23 2 views
1

Я использую Backbone Paginator, и когда я фильтрую коллекцию, она только фильтрует текущую страницу. Как фильтровать для всей коллекции?Как я могу отфильтровать коллекцию с помощью Backbone Paginator, включая элементы не на текущей странице?

В настоящее время я обрабатываю кнопку фильтра в Marionette. Когда пользователь вводит значение для фильтрации, я устанавливаю значение как член в моем объекте Application. Затем я вызываю выборку в коллекции. Эти элементы находятся в таблице, отображаемой в композитном представлении. Я переопределить метод фильтра и возвращает 0, если поле данных в модели не соответствует критериям, указанным в значении фильтра:

filter: function(child, index, collection) { 
    var name = child.get('full_name').toLowerCase(); 
    if (App.nameFilter.length) { 
    if (name.indexOf(App.nameFilter.toLowerCase()) == -1) { 
     return 0; 
    } 
    } 
    return 1; 
} 

Если модель ребенок не на текущей странице, он не получает подобрал. Или, есть ли лучший способ сделать это?

ответ

0

Я не знаю, нашли ли вы решение проблемы, но фильтрация в марионетке не влияет на коллекцию, управляемую Paginator, это причина, вызывающая ошибку при разбиении на страницы.

Я тоже работаю над подобным материалом, и я думаю, что единственный способ - управлять фильтрацией непосредственно в коллекции

Смежные вопросы