您如何在Rails 3应用程序中添加管理器

问题描述

|| 我刚刚使用Mike Hartl的\“通过示例学习Rails”构建了Rails 3应用程序。我已经准备好部署它,但是对于如何向应用程序添加管理员感到困惑。我将是唯一的管理员。在部署之前是否会添加管理员,如果可以,我该如何做。     

解决方法

        我认为谈论“管理员帐户”时需要的实际上是两件事:身份验证(登录名)和授权(登录名可以/不能做的事情)。 在铁轨下,一种方法是使用两种不同的宝石。我建议您看看设计和康康舞。它们都是由铁杆巨星JoséValim和Ryan Bates开发并积极维护的。     ,        本教程实际上并没有创建一个可以创建管理员的界面。如果您要测试不允许删除其他管理员帐户的部分,则可以通过在sample_data.rake文件中添加2个管理员来使用faker进行测试:
def make_users
  admin = User.create!(:name => \"Example User\",:email => \"[email protected]\",:password => \"foobar\",:password_confirmation => \"foobar\")
admin.toggle!(:admin)
admin2 = User.create!(:name => \"Example User2\",:email => \"[email protected]\",:password_confirmation => \"foobar\")
admin.toggle!(:admin)
99.times do |n|
name  = Faker::Name.name
email = \"example-#{n+1}@railstutorial.org\"
password  = \"password\"
User.create!(:name => name,:email => email,:password => password,:password_confirmation => password)
  end
end
如果要向生产中添加管理员,我想您可以创建您的帐户并使用数据库编辑器切换admin功能,然后将数据库推送到生产服务器?那就是我会做的,但我绝不是专家。     ,        对于我的Web应用程序上的管理控制面板,我正在使用typus gem https://github.com/fesplugas/typus/ 它将生成一个管理页面,默认情况下会使用您的模型default_scope来获取数据。     ,        我正忙着同一件事! 我在堆栈上找到了这个:
rails c
Loading development environment (Rails 3.0.0.beta3)
irb(main):001:0> admin = Admin.create! do |u|
irb(main):002:1* u.email = \'[email protected]\'
irb(main):003:1> u.password = \'password\'
irb(main):004:1> u.password_confirmation = \'password\'
irb(main):005:1> end
我将“管理员”更改为“用户”,但问题是它创建的是普通用户而不是管理员用户。我们需要在某个地方放入
- admin.toggle!(:admin)
或使其正确。如果还有其他问题,我会通知您。