我已经看到这可以使用云代码完成。 但我不知道如何在云代码中创建一个函数并使用Javascript中的参数执行/调用它。这可能吗?
答案 0 :(得分:1)
有可能。要创建用户和管理员,必须将该用户添加到admin角色的用户。这是一个云功能......
Parse.Cloud.define("setUserAdmin", function(request, response) {
var user;
var userQuery = new Parse.Query(Parse.User);
return userQuery.get(request.userId).then(function(result) {
user = result;
var roleQuery = new Parse.Query(Parse.Role);
roleQuery.equalTo("name", "admin");
// here's our defense against mischief: find the admin role
// only if the requesting user is an admin
roleQuery.equalTo("users", request.user);
return roleQuery.first();
}).then(function(role) {
if (!role) {
return Parse.Promise.error("only admins can add admins");
}
Parse.Cloud.useMasterKey();
var relation = role.relation("users");
relation.add(user);
return role.save();
}).then(function(result) {
response.success(result);
}, function(error) {
response.error(error);
});
});
从JS sdk调用它......
var params = { userId: someUserId };
return Parse.Cloud.run("setUserAdmin", params).then(function(result) {
// handle success
}, function(error) {
// handle error
});