Ruby on rails Rails:使用Desive添加管理员角色,Desive可以查看所有用户
我需要使用Desive为我的应用程序创建一个管理员角色。我已经使用Desive创建了基本身份验证。我有一个设计在我的应用程序的用户模型,但现在我需要一个管理员谁可以显示编辑和销毁所有的用户。我试着跟随教程,但没有一个有用。Ruby on rails Rails:使用Desive添加管理员角色,Desive可以查看所有用户,ruby-on-rails,ruby-on-rails-3,devise,Ruby On Rails,Ruby On Rails 3,Devise,我需要使用Desive为我的应用程序创建一个管理员角色。我已经使用Desive创建了基本身份验证。我有一个设计在我的应用程序的用户模型,但现在我需要一个管理员谁可以显示编辑和销毁所有的用户。我试着跟随教程,但没有一个有用。 我使用的是rails 3.0.10和ruby 1.9.2-p290 您只需首先通过创建migratioin来定义role.rb rails g model role name:string 然后在role.rb中 class Role
我使用的是rails 3.0.10和ruby 1.9.2-p290 您只需首先通过创建migratioin来定义role.rb
rails g model role name:string
然后在role.rb中
class Role
has_one:user
end
在用户模型中
class user
belongs_to :role
end
在数据库中插入两个角色
1.admin
2.user
那就看这个
if user.role.name == "admin"
# can do all your logic
else
your logic
end
确保在用户模型中插入角色\u id:integer
class user
belongs_to :role
end
试试看……我和你有类似的要求,也不希望任何用户能够注册。所有这些都将由管理员负责。告诉她我做了什么 我添加了另一个叫做Admin的设计模型
rails generate devise MODEL
禁用用户模型的“可注册”,以便用户无法自行选择
user.rb
class User < ActiveRecord::Base
# Include default devise modules. Others available are:
# :token_authenticatable, :encryptable, :confirmable, :lockable, :registerable, :timeoutable and :omniauthable
devise :database_authenticatable, :recoverable, :rememberable, :trackable, :validatable
# Setup accessible (or protected) attributes for your model
attr_accessible :email, :password, :password_confirmation, :remember_me, :first_name, :last_name, :role, :admin
# attr_accessible :title, :body
end
希望这有帮助。非常好的解决方案。哈哈,刚刚注意到这是一个榜样:根据你的需要选择坑。