diff --git a/src/backend/memory.js b/src/backend/memory.js index 688c9194..d5a43acd 100644 --- a/src/backend/memory.js +++ b/src/backend/memory.js @@ -84,10 +84,11 @@ this.recline.Backend = this.recline.Backend || {}; var dfd = $.Deferred(); results = this.datasets[model.id].documents; // not complete sorting! - _.each(queryObj.sort, function(item) { + _.each(queryObj.sort, function(sortObj) { + var fieldName = _.keys(sortObj)[0]; results = _.sortBy(results, function(doc) { - var _out = doc[item[0]]; - return (item[1] == 'asc') ? _out : -1*_out; + var _out = doc[fieldName]; + return (sortObj[fieldName].order == 'asc') ? _out : -1*_out; }); }); var results = results.slice(start, start+numRows); diff --git a/src/view-grid.js b/src/view-grid.js index feb02b85..3ab4b6fe 100644 --- a/src/view-grid.js +++ b/src/view-grid.js @@ -140,11 +140,9 @@ my.DataGrid = Backbone.View.extend({ }, setColumnSort: function(order) { - this.model.query({ - sort: [ - [this.state.currentColumn, order] - ] - }); + var sort = [{}]; + sort[0][this.state.currentColumn] = {order: order}; + this.model.query({sort: sort}); }, hideColumn: function() { diff --git a/test/backend.test.js b/test/backend.test.js index f071085f..7ba2e913 100644 --- a/test/backend.test.js +++ b/test/backend.test.js @@ -57,7 +57,7 @@ test('Memory Backend: query sort', function () { var data = dataset.backend.datasets[memoryData.metadata.id]; var queryObj = { sort: [ - ['y', 'desc'] + {'y': {order: 'desc'}} ] }; dataset.query(queryObj).then(function(docs) {