ruby on rails-向活动管理员添加新管理员

我正在为用户使用devise。 我最近安装了Rails Active Admin gem,一切运行正常。

但是我不知道如何添加一个新的管理员用户。 我可以看到活动管理员使用用户admin@example.com在数据库中创建了admin_user表,我使用该表登录界面。

我尝试将admin_user添加为资源,以便可以仅单击活动管理界面中的“添加管理员用户”按钮来添加新用户,但是这似乎不起作用。

4个解决方案
89 votes

布赖恩所说的很完美[http://net.tutsplus.com/tutorials/ruby/create-beautiful-administration-interfaces-with-active-admin/]

AdminUser.create!(:email => 'admin@example.com', :password => 'password', :password_confirmation => 'password')
Scott answered 2020-07-07T09:15:54Z
6 votes

Brian所说的有效,但如果您想在界面中设置密码而不是让它发送重置电子邮件,请尝试以下操作:

将admin_user模型保留为其原始生成的默认值,然后在app / admin / admin_users.rb中:

ActiveAdmin.register AdminUser do
  index do
    column :email
    column :current_sign_in_at
    column :last_sign_in_at
    column :sign_in_count
    default_actions
  end

  form do |f|
    f.inputs "Admin Details" do
      f.input :email
      f.input :password
      f.input :password_confirmation
    end
    f.buttons
  end
end
Nate914375 answered 2020-07-07T09:16:18Z
1 votes
  1. 登录名:admin@example.com密码:密码=>登录
  2. 转到[http:// localhost:3000 / admin / admin_users]

如果要在管理面板中创建用户(设计用户,表“用户”):

  1. $ rails生成active_admin:资源用户
  2. app / admin / user.rb:

ActiveAdmin.register User do
  permit_params :email, :name, :password, :password_confirmation

  index do
    column :name
    column :email
    actions
  end

  form do |f|
    f.inputs 'User' do
      f.input :name
      f.input :email
      f.input :password
      f.input :password_confirmation
    end
    f.actions
  end
end

Oleksandr Melnyk answered 2020-07-07T09:16:56Z
0 votes

这是新的语法AdminUser.create!(email: "youremail@domain.com", password: "password123", password_confirmation: "password123")

gsumk answered 2020-07-07T09:17:15Z
translate from https://stackoverflow.com:/questions/7590609/adding-new-admins-to-active-admin