Parse.com CloudCode добавить пользователя в существующую роль не работает
Вот код облака Parse javascript, который я пытаюсь использовать. Когда создается новый пользователь _U, я хочу добавить их в свою роль клиента.
Parse.Cloud.afterSave(Parse.User, function(request) {
Parse.Cloud.useMasterKey();
query = new Parse.Query(Parse.Role);
query.equalTo("name", "Client");
query.first ({
success: function(role) {
role.getUsers().add(request.user);
role.save();
},
error: function(error) {
throw "Got an error " + error.code + " : " + error.message;
}
});
});
Это берет код непосредственно из примера роли Parse.com. Код работает успешно, когда новый _User сохранен, возвращая Result: Success
, но когда я проверяю "пользователей", привязанных к этой роли в браузере данных, ничего не происходит.
Я также попытался заменить role.getUsers().add(request.user);
за role.relation("users").add(request.user);
согласно примеру на старом форуме Parse.com, но без разницы. Похоже, что это должно быть действительно прямо вперед, поэтому я не уверен, что я делаю неправильно.
(Я вручную использовал REST API, используя curl, для добавления _Users к клиентской роли, и это работает, поэтому я знаю, что это должно работать.)
1 ответ
Оказывается, вам нужно использовать request.object
вместо request.user
, Теперь это работает!