我有一个 Store
类,它有一个 itemsInStore
关系,在 Parse 上包含多个 Item
对象。我目前正在尝试解析 Cloud Code 以检索 Store
中的所有 Items
,但不知道这是什么常见做法。
特别是,我在这里找不到真正回答我问题的文章,例如查询应该如何。
Parse.Cloud.define("retrieveNearbyLocationsAndItemsWithCurrentLocation", function(request, response) {
var Store = Parse.Object.extend("Store");
var store = new Store();
var query = new Parse.Query(Store);
var userGeoPoint = new Parse.GeoPoint(request.params.lat, request.params.long);
query.near("geopoint", userGeoPoint);
query.limit(1);
query.find({
success: function(httpResponse) {
response.success(httpResponse[0].get("itemsInStore"));
console.log(httpResponse[0].get("itemsInStore"));
},
error: function(httpResponse) {
response.error("Error: retrieveNearbyLocationsAndItemsWithCurrentLocation");
}
});
});
控制台日志将返回 {"__type":"Relation","className":"Item"}
为了深入这个Relation
并获取其中的所有Item
对象,下一步应该做什么?
最佳答案
关系回答查询。运行该查询以获取相关元素。
Parse.Cloud.define("retrieveNearbyLocationsAndItemsWithCurrentLocation", function(request, response) {
var Store = Parse.Object.extend("Store");
var store = new Store();
var query = new Parse.Query(Store);
var userGeoPoint = new Parse.GeoPoint(request.params.lat, request.params.long);
query.near("geopoint", userGeoPoint);
query.limit(1);
query.find().then(function(stores) {
if (stores.length && stores[0].relation("itemsInStore")) {
var itemQuery = stores[0].relation("itemsInStore").query();
return itemQuery.find();
} else {
return [];
}
}).then(function(items) {
response.success(items);
}, function(error) {
response.error(error);
});
});
关于javascript - 如何从类关系中检索对象列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29405487/