如何结合这两个系统是用户



请帮助解决问题。

在 Rails4 上,我安装了 gem 'Devise'。 在我安装gem'activeadmin'之后。 结果我有 2 个用户系统:

create_table "admin_users", force: :cascade do |t|
  t.string   "email",                  default: "", null: false
  t.string   "encrypted_password",     default: "", null: false
  t.string   "reset_password_token"
  t.datetime "reset_password_sent_at"
  t.datetime "remember_created_at"
  t.integer  "sign_in_count",          default: 0,  null: false
  t.datetime "current_sign_in_at"
  t.datetime "last_sign_in_at"
  t.string   "current_sign_in_ip"
  t.string   "last_sign_in_ip"
  t.datetime "created_at"
  t.datetime "updated_at"
end
create_table "users", force: :cascade do |t|
  t.string   "email",                  default: "", null: false
  t.string   "encrypted_password",     default: "", null: false
  t.string   "reset_password_token"
  t.datetime "reset_password_sent_at"
  t.datetime "remember_created_at"
  t.integer  "sign_in_count",          default: 0,  null: false
  t.datetime "current_sign_in_at"
  t.datetime "last_sign_in_at"
  t.string   "current_sign_in_ip"
  t.string   "last_sign_in_ip"
  t.datetime "created_at"
  t.datetime "updated_at"
end

对于进入管理员面板,我使用admin_users登录名和密码。 对于进入网站的私人部分,我使用用户登录名和密码。

但我需要你admin_users有能力进入网站的私人部分。

当你安装ActiveAdmin时,你应该跳过用户生成:

rails generate active_admin:install --skip-users

或者告诉 AD 使用另一个型号名称:

rails g active_admin:install User

此外,还应考虑将单个表用于用户模型。如果您需要单独的用户,您可以:

添加一些字段来定义您的管理员用户:

add_column :users, :is_admin, :boolean, default: false

或者为用户创建角色

class User < ActiveRecord::Base
  belongs_to :role
end
class Role < ActiveRecord::Base
  has_many :users
end

或创建性传播感染

class Admin < User
  # other code here
end
你应该在

安装时告诉activeadmin user model的名称,即rails g active_admin:install User

这将指示 activeadmin 使用现有模型。

欲了解更多信息,请访问活动管理员网站

最新更新