Мне нужно изменить значение массива от «Пользователь» до «Администратора», если функция нажата, и мне нужно закодировать его в облачном коде.Как изменить массив ролей разбора при нажатии кнопки с облачным кодом и Шашидо?
но есть проблема, массив не меняет
следующий код работает, но только часть с nameRoleQuerry не работает, и это часть которым мне нужно изменить.
promoteToAdmin: function promoteToAdmin(request, response) {
if (!request.params.companyUser) {
response.error('Request did not have an authenticated user attached with it');
} else {
var companyUser;
var companyUserQuery = new Parse.Query('CompanyUser');
companyUserQuery.include('user');
companyUserQuery.include('company');
companyUserQuery.get(request.params.companyUser, {
useMasterKey: true
}).then((giveRolename) => {
var nameRoleQuery = new Parse.Query(Parse.Role);
request.nameRoleQuery.set('user', ['Admin']);
return nameRoleQuery.save(null, {
useMasterKey: true
});
}).then((companyUserObject) => {
companyUser = companyUserObject;
var userRoleQuery = new Parse.Query(Parse.Role);
userRoleQuery.equalTo('name', 'Company-User-' + companyUser.get('company').id);
return userRoleQuery.first({
useMasterKey: true
});
}).then((userRole) => {
var usersInUserRole = userRole.relation('users');
usersInUserRole.remove(companyUser.get('user'));
return userRole.save(null, {
useMasterKey: true
});
}).then((userRoleSaveResult) => {
var adminRoleQuery = new Parse.Query(Parse.Role);
adminRoleQuery.equalTo('name', 'Company-Admin-' + companyUser.get('company').id);
return adminRoleQuery.first({
useMasterKey: true
});
}).then((adminRole) => {
var usersInAdminRole = adminRole.relation('users');
usersInAdminRole.add(companyUser.get('user'));
return adminRole.save(null,{
useMasterKey: true
});
}).then((saveResult) => {
console.log('after');
response.success('fissa is aan');
}, (error) => {
console.log(error);
});
console.log();
}
}
массив роль должна измениться.
Что такое 'request.nameRoleQuery'? Кажется немного запутанным, когда вы пытаетесь сохранить имяRoleQuery. Сначала вы создаете 'Parse.Query' для' Parse.Role', затем устанавливаете свойство на этом объекте 'request.nameRoleQuery', а затем пытаетесь сохранить' Parse.Query'. Можете прояснить, что вы пытаетесь сделать? – EReid
Я пытаюсь изменить роль от пользователя к администратору через обещания, но я не знаю, правильно ли это, я попробовал кое-что там. –