Изменение данных пользователя через процессов
Здравствуйте!
Что-то вроде все верно ввожу (на мой взгляд), но modx говорит обратное.
Помогите разобраться.
В общем хочу обновить пользователя.
Ввожу данные (массив «allFormFields», отправляю в процессор, все запускаю в Console. Но что-то не могу понять, что не так.
Адрес процессора верный, user существует, id его, поля из массива существуют. Вроде все чудно.
Еще, не могу понять, почему вообще ничего не возвращается. Ведь еслиб был бы запущен процессор, то был бы какой-то ответ. Но его нет…
Help)
Что-то вроде все верно ввожу (на мой взгляд), но modx говорит обратное.
Помогите разобраться.
В общем хочу обновить пользователя.
Ввожу данные (массив «allFormFields», отправляю в процессор, все запускаю в Console. Но что-то не могу понять, что не так.
$allFormFields = [
'id' => '4',
'fullname' => 'Markus Markus',
'email' => 'user2@test.ru',
'phone' => '78945611223'
];
$response = $modx->runProcessor(
'/security/user/update',
$allFormFields
);
echo '<pre>';
var_dump($response->getMessage());
echo '</pre>';
В ответ получаю — пустую строку.Адрес процессора верный, user существует, id его, поля из массива существуют. Вроде все чудно.
Еще, не могу понять, почему вообще ничего не возвращается. Ведь еслиб был бы запущен процессор, то был бы какой-то ответ. Но его нет…
Help)
Комментарии: 4
Сообщение об ошибке: «Please specify a user name.»
Нужно добавить поле username:
Нужно добавить поле username:
$allFormFields = [
'username' => 'test',
'id' => '4',
...
];
мм,
добавил username и все получилось.
Т.е. получается, для изменения данных пользователя нужны 2 значения — id и username.
Благодарю!)
И еще, может кому полезно будет:
Вчера мне этого не хватало)
добавил username и все получилось.
Т.е. получается, для изменения данных пользователя нужны 2 значения — id и username.
Благодарю!)
И еще, может кому полезно будет:
$errors = $response->getFieldErrors();
// var_dump($response->isError()); // bool
echo '<pre>';
var_dump($errors);
echo '</pre>';
Так можно искать ошибки.Вчера мне этого не хватало)
И вот сразу следующая проблема.
Теперь собрал форму, форма работает.
Открыл страницу в Инкогнито, авторизовался и используя новую форму хочу отправить данные на изменение профиля. Но возникает ошибка — «permission_denied_processor» (от $response->getMessage()).
Тут я понимаю, аккаунт (с которого происходит отправка) не имеет нужные права, на редактирование своего аккаунта.
Для решения проблемы создал группу пользователей, создал для них Политику доступа с правами «change_profile», перезагрузил права пользователей.
Но что-то не работает.
Что еще можно сделать?
Спасибо!
Теперь собрал форму, форма работает.
Открыл страницу в Инкогнито, авторизовался и используя новую форму хочу отправить данные на изменение профиля. Но возникает ошибка — «permission_denied_processor» (от $response->getMessage()).
Тут я понимаю, аккаунт (с которого происходит отправка) не имеет нужные права, на редактирование своего аккаунта.
Для решения проблемы создал группу пользователей, создал для них Политику доступа с правами «change_profile», перезагрузил права пользователей.
Но что-то не работает.
Что еще можно сделать?
Спасибо!
Здравствуйте!
Да, процессор проверяет права на редактирование профиля.
Вот видео, которое помогло найти нужные права — www.youtube.com/watch?v=CJODp0TI6O8&list=PLXDufaNxAeQvYyssYerlAQ9uL5C74cFBh
Спасибо автору за очень полезный контент.
А на счет моего ответа — может кому пригодится)
Да, процессор проверяет права на редактирование профиля.
Вот видео, которое помогло найти нужные права — www.youtube.com/watch?v=CJODp0TI6O8&list=PLXDufaNxAeQvYyssYerlAQ9uL5C74cFBh
Спасибо автору за очень полезный контент.
А на счет моего ответа — может кому пригодится)
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.