如何创建第一个(管理员)用户(CanCan和Devise)?

问题描述:

我在导轨进行认证3应用程序通过Tony's tutorial如何创建第一个(管理员)用户(CanCan和Devise)?

休耕我不想公开登记在我的应用程序,只需创建新用户与管理员帐户,但我不能手动创建管理员帐户,因为在表那里的用户有加密的密码和必须生成的salt,我不知道如何:|

+3

这个问题与CanCan有什么关系? – 2011-03-02 00:33:02

+0

@Mark S ...我不知道。? – 2013-07-02 03:45:11

您可以从导轨控制台执行此操作。从命令行转到您的rails应用程序的目录并键入rails console。然后输入以下代码创建一个用户:

user=User.create!(:email=>'[email protected]',:username=>'test',:password=>'password') 

这将创建一个用户对象(假设你的色器件资源被称为用户)。现在您可以使用您刚刚创建的用户对象来设置管理权限。

+0

当我想要访问用户/新的,未定义的方法“模型”,并从控制台,当我尝试创建新的用户时,我在浏览器中得到模板错误我得到ActionView :: Template :: Error:ActionView :: Template :: Error 和很多文件引用(这是不好的复制评论:)) – dormitkon 2011-03-01 09:04:48

+0

这是我的应用程序(代码)的一部分:http://anticdesign.info/work/ror/ – dormitkon 2011-03-01 09:21:58

+0

你的能力模型在哪里? - https://github.com/ryanb/cancan/wiki/defining-abilities – 2011-03-01 17:58:45

我目前是这样的(你的细节可能会不同)在我的seeds.rb文件中为Devise创建我的管理用户。

User.new({ :email => '[email protected]', :password => 'password', :password_confirmation => 'password'}).save 

您可以在终端窗口中使用rake db:seed执行它。

此外,如果您使用的是可确定的,并希望创建新的帐户,你可以做这样的事情来跳过确认电子邮件的要求:

newuser = User.new({ :email => '[email protected]', 
      :password => 'password', 
      :password_confirmation => 'password'}) 
newuser.skip_confirmation! 
newuser.save 

此,如果你正在创建的帐户是非常有用对于可信用户或者您正在创建测试帐户。