Parse Cloud code query.withinKilmeters
(Изменить 1)
Я пытаюсь работать с облачным кодом и GeoPoint. С помощью функции "query.withinKilmeters" у меня есть указатель на класс Location, но когда я пытаюсь вызвать функцию, я получаю сообщение об ошибке "недопустимое имя ключа". Как правильно это сделать? Я ничего не смог найти в документации, вот файл функции облака.
Ошибка: "код":105,"сообщение": "Неверное имя ключа: [объект объекта]"
здесь документация: http://parseplatform.org/Parse-SDK-JS/api/v1.11.1/Parse.html
Parse.Cloud.define("getCloseFindings", function(request, response){
var query = new Parse.Query("findings");
var locQuery = query.include("location");
var LocQuery = locQuery.get("geoLocation");
var Loc_Lat = request.params.Latitude;
var Loc_Long = request.params.Longitude;
var UserLocation = new Parse.GeoPoint(Loc_Lat,Loc_Long);
var RadiusLocation = request.params.Radius;
query.equalTo("isDeleted", false);
query.withinKilometers(locQuery, UserLocation, 100);
query.find({
success: function(results){
if(results === undefined){
var response_jsonArr = {
code : 404,
message : "Not Found"
};
response.success(response_jsonArr);
}else{
var jsonArr = [];
for ( var i = 0; i < results.length; ++i ) {
var finding_location = results[i].get("location");
jsonArr.push({
name: results
});
}
response.success(jsonArr);
}
}, error: function(error){
response.error(error);
}
});
1 ответ
Вы передаете объект в query.withinKilmeters в качестве первого параметра, когда вы должны передавать строку. Попробуйте вместо этого использовать ключ из вашего запроса query.include, например так:
query.withinKilometers("location", userLocation, 100);