ActiveAdmin用户名或密码无效

时间:2016-07-10 12:20:43

标签: ruby-on-rails ruby activeadmin

我已经在C9 Ruby on Rails环境中成功安装了ActiveAdmin,但是当我输入默认用户名和密码时,它返回“无效的电子邮件或密码。”

这就是我的所作所为:

  • gem 'activeadmin', github: 'activeadmin'添加到我的Gemfile
  • bundle install
  • rails generate active_admin:install
  • 使用rails server
  • 启动服务器
  • localhost:3000/admin并出现登录屏幕。

4 个答案:

答案 0 :(得分:2)

您需要使用rails控制台并创建一个已知的管理员用户。

AdminUser.create!(:email => 'admin@example.com', :password => 'password', :password_confirmation => 'password')

最终你想把它移到你的种子文件或类似的东西。

答案 1 :(得分:1)

转到db/seeds.rb

你应该有以下内容:

AdminUser.create!(email: 'admin@example.com', password: 'password', password_confirmation: 'password')

并在您的控制台中运行:

rake db:seed

您可以在此处创建大量管理员用户,例如:

AdminUser.create!(email: 'admin1@example.com', password: 'password1', password_confirmation: 'password1')
AdminUser.create!(email: 'admin2@example.com', password: 'password2', password_confirmation: 'password2')

然后在控制台中运行rake db:seed来创建。

假设您有一个Post模型,现在在admin/post.rb中您需要这样的内容:

ActiveAdmin.register Post do
permit_params :title, :content, :author, :category, :image

show do |t|
  attributes_table do
    row :title
    row :content
    row :author
    row :category
    row :image do
      post.image? ? image_tag(post.image.url, height: '100') : content_tag(:span, "nothing")
    end
  end
end

form :html => {:enctype => "multipart/form-data"} do |f|
  f.inputs do
    f.input :title
    f.input :content
    f.input :author
    f.input :category
    f.input :image, hint: f.post.image? ? image_tag(post.image.url, height: '100') : content_tag(:span, "upload here")
  end
  f.actions
end

end

确保您完成了所有回形针生成等

答案 2 :(得分:0)

如果您查看活动管理员的源代码,请在运行迁移后

https://github.com/activeadmin/activeadmin/blob/master/lib/generators/active_admin/devise/devise_generator.rb

create_user_code = "#{class_name}.create!(email: 'admin@example.com', password: 'password', password_confirmation: 'password')"

因此创建的默认用户是admin@example.com,密码为:密码

答案 3 :(得分:0)

rails generate active_admin:installseed.db上添加一行以创建默认的用户名和密码。

因此,只需运行rails db:seed,您就很好了。

我不确定为什么ActiveAdmin设置文档中未提及此内容。