Javascript 如何从类关系中检索对象列表?
我有一个类Javascript 如何从类关系中检索对象列表?,javascript,parse-platform,parse-cloud-code,Javascript,Parse Platform,Parse Cloud Code,我有一个类Store,它有一个关系itemsInStore,在解析时包含多个Item对象。我目前正在尝试解析云代码,以检索商店中的所有项目,但不知道这是一种常见的做法 特别是,我在这里找不到真正回答我问题的文章,例如,查询应该如何 Parse.Cloud.define(“retrieveNearbyLocationsAndItemsWithCurrentLocation”,函数(请求、响应){ var Store=Parse.Object.extend(“Store”); var store=n
Store
,它有一个关系itemsInStore
,在解析时包含多个Item
对象。我目前正在尝试解析云代码,以检索商店中的所有项目
,但不知道这是一种常见的做法
特别是,我在这里找不到真正回答我问题的文章,例如,查询应该如何
Parse.Cloud.define(“retrieveNearbyLocationsAndItemsWithCurrentLocation”,函数(请求、响应){
var Store=Parse.Object.extend(“Store”);
var store=newstore();
var query=newparse.query(存储);
var userGeoPoint=new Parse.GeoPoint(request.params.lat,request.params.long);
query.near(“geopoint”,userGeoPoint);
查询.限额(1);
查询.查找({
成功:函数(httpResponse){
response.success(httpResponse[0].get(“itemsInStore”);
log(httpResponse[0].get(“itemsInStore”);
},
错误:函数(httpResponse){
response.error(“错误:retrieveNearbyLocationsAndItemsWithCurrentLocation”);
}
});
});
控制台日志将返回{“\uu类型”:“关系”,“类名”:“项”}
为了深入挖掘此关系
并检索其中的所有项
对象,接下来应该做什么?该关系回答了一个查询。运行该查询以获取相关元素
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);
});
});
var query=aStore.get(“itemsInStore”).query()代码>@danh谢谢你的提示!但是,我不断收到错误,如错误:无法序列化未保存的Parse.Object
,不确定在这里要做什么。谢谢:)发布代码是值得的——我添加了一个关于如何使用关系列的明确答案。错误消息可能是试图返回关系的结果,而不是它的查询结果。(从未尝试仅返回PFRelation…无论哪种方式,都是糟糕的错误消息,因为没有尝试保存任何内容)。感谢您的精彩回答!我建议将if(stores.length&&stores[0].get(“itemsInStore”)
更改为if(stores.length&&stores[0].relationship(“itemsInStore”)
,下一行也是如此,因为我会得到TypeError。