2016-10-28 23 views
0

我正在使用自身托管的Parse作为后端的反应本机应用程序中使用筛选功能。它通常工作得很好,但我似乎遇到了一个我无法解决的问题。Parse.Query排除键值在两个数字之间的项目?

在我们的应用程序中,我们有三个可以单独打开和关闭的过滤器。他们被称为“低”,“中”和“高”。

Parse.Query有限制,如“lessThanOrEqualTo”和“greaterThanOrEqualTo”,但没有“valueNotBetween”,我想。当我们同时选择“低”和“高”时,我们的问题就会上升,因为我们可以将lessThanOrEqual值设置为对应于低过滤器的值,将higherThanOrEqualTo设置为高的值,但我们不能排除中等范围的值。

任何人有任何想法?

+0

我认为这是不可能的,我建议你分配一个值“高,‘中等’或‘低’当创建这些字段时(例如使用云代码)......或者如果只有几行,可以使用'notEqualTo' ... –

回答

0

你可以做一个or查询(复合查询),如记录here & here

var queryHigh = new Parse.Query("YourClass"); 
queryHigh.greaterThanOrEqualTo("key",value); 
var queryLow = new Parse.Query("YourClass"); 
queryLow.lessThanOrEqualTo("key",value); 
var mainQuery = Parse.Query.or(queryHigh, queryLow); 
mainQuery.find({ 
    success: function(results) { 
    // results 
    }, 
    error: function(error) { 
    // There was an error. 
    } 
}); 
相关问题