parse.com javascript 'geo query within or is not supported'
parse.com javascript 'geo query within or is not supported'
我正在尝试查询一些用户,这些用户在给定点的半径范围内,或者他们满足一些其他要求。为此,我需要对两个查询进行 OR:
var notOnlyLocal = new Parse.Query(Parse.User);
notOnlyLocal.equalTo('onlyLocal', false);
notOnlyLocal.equalTo('regions', someSelectedRegions);
var onlyLocal = new Parse.Query(Parse.User);
onlyLocal.equalTo('onlyLocal', true);
onlyLocal.withinMiles('location', geoPoint, 100);
return Parse.Query.or(notOnlyLocal, onlyLocal);
Parse 给出了一个很好的答案:
{
"code": 141,
"error": "{\"code\":102,\"message\":\"geo query within or is not supported\"}"
}
对于这种情况有解决方法吗?文档中没有关于此的内容。在警告中,他们说一个对象可能只包含 1 个位置,near() 函数将结果限制为 100 英里半径,并且点不应等于或超过范围的末端。
有没有人试过做类似的事情,并且成功了?或者有什么好的解决方法吗?
您不能将此查询与“or”语句一起使用。您需要 运行 这些作为 2 个单独的查询,然后自己组合结果集。首先执行 notOnlyLocal 查询,然后通过 withinMiles clausole
过滤结果
我正在尝试查询一些用户,这些用户在给定点的半径范围内,或者他们满足一些其他要求。为此,我需要对两个查询进行 OR:
var notOnlyLocal = new Parse.Query(Parse.User);
notOnlyLocal.equalTo('onlyLocal', false);
notOnlyLocal.equalTo('regions', someSelectedRegions);
var onlyLocal = new Parse.Query(Parse.User);
onlyLocal.equalTo('onlyLocal', true);
onlyLocal.withinMiles('location', geoPoint, 100);
return Parse.Query.or(notOnlyLocal, onlyLocal);
Parse 给出了一个很好的答案:
{
"code": 141,
"error": "{\"code\":102,\"message\":\"geo query within or is not supported\"}"
}
对于这种情况有解决方法吗?文档中没有关于此的内容。在警告中,他们说一个对象可能只包含 1 个位置,near() 函数将结果限制为 100 英里半径,并且点不应等于或超过范围的末端。
有没有人试过做类似的事情,并且成功了?或者有什么好的解决方法吗?
您不能将此查询与“or”语句一起使用。您需要 运行 这些作为 2 个单独的查询,然后自己组合结果集。首先执行 notOnlyLocal 查询,然后通过 withinMiles clausole
过滤结果