Как я могу назначить пользователю определенную роль с помощью Drush? В моем случае я хочу предоставить пользователю роль администратора.
Как я могу назначить пользователю определенную роль с помощью Drush? В моем случае я хочу предоставить пользователю роль администратора.
Ответы:
drush help user-add-role
Add a role to the specified user accounts.
Examples:
drush user-add-role "power user" 5,user3 Add the "power user" role to the accounts with name, id, or email 5 or user3, uids 2
--uid=2,3 --name=someguy,somegal and 3, names someguy and somegal, and email address of billgates@microsoft.com
--mail=billgates@microsoft.com
Arguments:
role The name of the role to add
users (optional) A comma delimited list of uids, user names, or email addresses.
Options:
--mail=<me@example.com> A comma delimited list of user mail addresses of users to operate on.
--name=<foo> A comma delimited list of user names of users to operate on.
--uid=<3,5> A comma delimited list of uids of users to operate on.
Aliases: urol
Итак, для вашего случая использования:
drush user-add-role administrator USERNAME
Сначала вам нужно получить идентификатор пользователя (UID) в таблице пользователей следующим образом:
drush sqlq 'select * from users \Gamma'
Мой UID, который я хотел, был uid = 444
Затем получите идентификатор роли, которую вы хотите назначить этому пользователю, выполнив это:
drush sqlq 'select * from role'
Администратор роль избавлена = 3
Теперь у меня есть uid и rid, я делаю следующее:
drush sqlq 'insert into users_roles (uid, rid) values (444, 3);'