[#96,backend/memory] Simplified types handling in range filter
This commit is contained in:
@@ -99,11 +99,12 @@ this.recline.Backend.Memory = this.recline.Backend.Memory || {};
|
|||||||
break;
|
break;
|
||||||
case 'range':
|
case 'range':
|
||||||
results = _.filter(results, function (doc) {
|
results = _.filter(results, function (doc) {
|
||||||
var start = filter.start;
|
// TODO handle different data types correctly
|
||||||
var stop = filter.stop;
|
var number = !isNaN(parseFloat(filter.start, 10));
|
||||||
var value = doc[filter.field];
|
var start = number ? parseFloat(filter.start, 10) : filter.start;
|
||||||
|
var stop = number ? parseFloat(filter.stop, 10) : filter.stop;
|
||||||
|
var value = number ? parseFloat(doc[filter.field]) : doc[filter.field];
|
||||||
|
|
||||||
// implicit string to number casting is done in JS if needed
|
|
||||||
return (value >= start && value <= stop);
|
return (value >= start && value <= stop);
|
||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
|
|||||||
Reference in New Issue
Block a user