I am using Parse Cloud to update user info. The user exists in database. When I query users table it returns nothing. I want to update a field and save it back again. Here is my cloud function:
Parse.Cloud.define("update", async(request) => {
Parse.Cloud.useMasterKey();
let query = new Parse.Query(Parse.User);
query.equalTo("username", "admin");
let user = await query.first();
return user; // now result is empty object {}. but the user exists in database
});
I think this issue relates to permissions because in other cases (other objects) I can query tables without problem.
So when I want to update the name field it says that "user.set is not a function":
if (user) {
user.set("name", "Just a name");
await user.save();
}
Parse.Cloud.useMasterKey();
does not exist for a long time. You should do:
Parse.Cloud.define("update", async(request) => {
let query = new Parse.Query(Parse.User);
query.equalTo("username", "admin");
let user = await query.first({ useMasterKey: true });
return user;
});