From 91c0f7704a746bac0e8e24c6b658754fcddd1496 Mon Sep 17 00:00:00 2001 From: kielni Date: Mon, 9 Sep 2013 07:31:12 -0700 Subject: [PATCH 1/2] allow a dataset to override handleQueryResult --- src/model.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/model.js b/src/model.js index 721a0c42..60382a06 100644 --- a/src/model.js +++ b/src/model.js @@ -46,6 +46,10 @@ my.Dataset = Backbone.Model.extend({ if (this.backend == recline.Backend.Memory) { this.fetch(); } + + // if backend has a handleQueryResultFunction, use that + this._handleResult = (_.has(this.backend, 'handleQueryResult')) ? + this.backend.handleQueryResult : this._handleQueryResult; }, // ### fetch @@ -189,7 +193,7 @@ my.Dataset = Backbone.Model.extend({ this._store.query(actualQuery, this.toJSON()) .done(function(queryResult) { - self._handleQueryResult(queryResult); + self._handleResult(queryResult); self.trigger('query:done'); dfd.resolve(self.records); }) From ee2067da684840eefc5ea6c965e77269a458c617 Mon Sep 17 00:00:00 2001 From: kielni Date: Tue, 10 Sep 2013 10:21:02 -0700 Subject: [PATCH 2/2] this.backend might be null; set handleResult before fetch --- src/model.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/model.js b/src/model.js index 60382a06..be9ca3e9 100644 --- a/src/model.js +++ b/src/model.js @@ -43,13 +43,13 @@ my.Dataset = Backbone.Model.extend({ // store will either be the backend or be a memory store if Backend fetch // tells us to use memory store this._store = this.backend; + + // if backend has a handleQueryResultFunction, use that + this._handleResult = (this.backend != null && _.has(this.backend, 'handleQueryResult')) ? + this.backend.handleQueryResult : this._handleQueryResult; if (this.backend == recline.Backend.Memory) { this.fetch(); } - - // if backend has a handleQueryResultFunction, use that - this._handleResult = (_.has(this.backend, 'handleQueryResult')) ? - this.backend.handleQueryResult : this._handleQueryResult; }, // ### fetch