如何创建我想成为角色= 1的Devise用户的客户类。
我有我的用户模型:
class User < ActiveRecord::Base
enum role: [:user, :customer, :admin, :producer]
after_initialize :set_default_role, :if => :new_record?
def set_default_role
self.role ||= :user
end
# Include default devise modules. Others available are:
# :confirmable, :lockable, :timeoutable and :omniauthable, :registerable
devise :invitable, :database_authenticatable, :confirmable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
end
我的客户模型
class Customer < User
end
我可以在customersController中指定这样的客户是什么:
# GET /customers
def index
@customers = Customer.where(:role => 1).page(params[:page])
end
但是如何修改我的客户模型以自己知道他是一个角色= 1的用户,所以我只能得到这样的客户:
@customers = Customer.all
答案 0 :(得分:0)
如果你确实需要Customer.all
,你应该寻找已经解决你想要做的事情的STI(单表继承)