如何从命令行创建Drupal角色?没有名为:organizer的角色

时间:2012-10-29 12:53:56

标签: drupal drush

我可以创建用户并从命令行向角色添加用户:

$ drush user-create organizer1

$ drush user-add-role organizer organizer1
There is no role named: organizer

但是,我不知道如何从命令行创建角色。

我发现这个模块可以修改角色的权限:

http://drupal.org/project/drush_role

但我仍然无法找到创建角色的方法

5 个答案:

答案 0 :(得分:3)

答案在这里:https://drupal.stackexchange.com/questions/56451/creating-a-new-user-role-with-drush

摘要是:更新到最新的Drush以便能够做到。

答案 1 :(得分:1)

显然没有匆忙命令来做这件事。我通过直接访问数据库解决了这个问题:

$ drush sql-query --db-prefix "INSERT INTO {role} (name, weight) VALUES('organizer', 3)"
test_command "sql-query --db-prefix \"INSERT INTO {role} (name, weight) VALUES('organizer', 3)\"" $?

$ drush sql-query --db-prefix "UPDATE {role} SET weight=4 WHERE (name='administrator')"

请注意,此解决方案仅适用于MySQL。

答案 2 :(得分:0)

应该由drush命令使用。

drush user-add-role "power user" 5,user3  

将“超级用户”角色添加到名称,ID或电子邮件5或用户3

的帐户中

答案 3 :(得分:0)

这适用于D7:

drush php-eval 'user_role_save((object) array("name"=>"administrator"));'

如果您还想让新角色成为超级管理员角色:

drush php-eval 'variable_set("user_admin_role", end(array_keys(user_roles())))'; 

之后,以下内容创建了一个新的"超级管理员"用户:

drush user-create Dries --mail="dries@example.com" --password="iheartjoomla"
drush user-add-role administrator Dries

答案 4 :(得分:0)

drush rcrt 'test role'

来源:http://drushcommands.com/drush-7x/role/role-create