Backbone.js анализирует немодифицированный ответ

У меня есть сервер, который работает с заголовком ETag. Backbone обращается к API впервые: все хорошо, ответ получен и парсится. Второй раз: магистраль отправляет на сервер ETag, в ответ получает NotModified. И Backbone пытается разобрать этот ответ, в результате чего создается коллекция под названием reset.

Есть ли способ сбросить коллекцию?

Способ добавления опции добавить в метод выборки работать не будет. Так как мне нужно полностью обновить коллекцию, если пришел ответ сервера.

var recommendCollection = Backbone.Collection.extend({
    model : Event,
    etag : null,
    urlRoot : '/api/users',
    initialize: function() {
        this.etag = null;
    },
    parse: function(response) {
        return response.data;
    },      
    url : function () {
        return (this.urlRoot + "/"+window.me.get('id')+ "/recommendation");
    },
    beforeSend : function (jqXHR, settings) {
        jqXHR.setRequestHeader('if-none-match', this.etag);
    },
    complete : function (jqXHR, textStatus) {
        if (jqXHR.status == 200 || jqXHR.status == 304) {
            this.etag = jqXHR.getResponseHeader('ETag');
        }
    },
    update : function () {
        this.fetch({
            beforeSend : this.beforeSend.bind(this),
            complete : this.complete.bind(this),
            data : {
                cityId : window.me.get('cityId'),
            }
        });
    }
5
задан Anton Tsivarev 20 June 2012 в 07:04
поделиться