解析云代码 - 在发送响应之前仅检索某些列。
Parse Cloud Code - Only Retrieve Certain Columns Before Sending Response.
我目前有这个云代码来检索与当前用户有关系的所有用户。我必须首先找到当前用户,然后查询 "Friends" 列,然后查询关系查询步骤。
行response.success(results)
returns所有当前用户所有好友的属性。我只想要属于这些朋友的一些专栏,而不是他们在注册时保存的每一个东西。
Parse.Cloud.define("getFriends", function(request, response) {
var userId = request.params.UserKey;
var query = new Parse.Query(Parse.User);
query.ascending("updatedAt");
query.get(userId, {
success: function(foundCurrentUser) {
var currentUser = foundCurrentUser;
var relation = currentUser.relation("Friends");
var getRelationQuery = relation.query();
getRelationQuery.find().then(function(results) {
response.success(results);
});
},
error: function(error) {
response.error(error);
}
});
});
我正在使用 swift 来使用响应,我不确定是否需要调整 swift 代码但无论如何都会提供它。
func LoadCarpoolersFromParse(Success:(object:AnyObject)->(),Failure:(error:NSError)->())
{
let params = NSMutableDictionary()
params.setObject(PFUser.currentUser()!.objectId!, forKey: "UserKey")
PFCloud.callFunctionInBackground("getCarpoolers", withParameters: params as [NSObject : AnyObject], block: {
(response:AnyObject?, error: NSError?) -> Void in
if error == nil {
Success(object: response!)
}
else{
Failure(error:error!)
}
})
}
}
您可以使用 Parse.Query
的 select
方法,在您的云代码中进行以下更改
Parse.Cloud.define("getFriends", function(request, response) {
var userId = request.params.UserKey;
var query = new Parse.Query(Parse.User);
query.ascending("updatedAt");
query.select("name","phone"); // replace with your required fields
我目前有这个云代码来检索与当前用户有关系的所有用户。我必须首先找到当前用户,然后查询 "Friends" 列,然后查询关系查询步骤。
行response.success(results)
returns所有当前用户所有好友的属性。我只想要属于这些朋友的一些专栏,而不是他们在注册时保存的每一个东西。
Parse.Cloud.define("getFriends", function(request, response) {
var userId = request.params.UserKey;
var query = new Parse.Query(Parse.User);
query.ascending("updatedAt");
query.get(userId, {
success: function(foundCurrentUser) {
var currentUser = foundCurrentUser;
var relation = currentUser.relation("Friends");
var getRelationQuery = relation.query();
getRelationQuery.find().then(function(results) {
response.success(results);
});
},
error: function(error) {
response.error(error);
}
});
});
我正在使用 swift 来使用响应,我不确定是否需要调整 swift 代码但无论如何都会提供它。
func LoadCarpoolersFromParse(Success:(object:AnyObject)->(),Failure:(error:NSError)->())
{
let params = NSMutableDictionary()
params.setObject(PFUser.currentUser()!.objectId!, forKey: "UserKey")
PFCloud.callFunctionInBackground("getCarpoolers", withParameters: params as [NSObject : AnyObject], block: {
(response:AnyObject?, error: NSError?) -> Void in
if error == nil {
Success(object: response!)
}
else{
Failure(error:error!)
}
})
}
}
您可以使用 Parse.Query
的 select
方法,在您的云代码中进行以下更改
Parse.Cloud.define("getFriends", function(request, response) {
var userId = request.params.UserKey;
var query = new Parse.Query(Parse.User);
query.ascending("updatedAt");
query.select("name","phone"); // replace with your required fields