我正在尝试为我的用户创建不同的配置文件类型。
我有一个用户模型。
User
类型有一个Profile
相关的,所以它has_one :profile
但是,Page
类型有一个Page
相关的,所以它has_one :page
但是,我User
对两者都使用同一张表,并且我正在设置帐户类型。
我想知道,如何根据我的用户帐户类型确定这种关系
编辑
用户模型 has_one :profile Profile belongs_to :user Page belongs_to :user 账户类型要么是“User”(进入 Profile 模型),要么是“Page”(进入 Page 模型)。
class User < ActiveRecord::Base
has_one :profile, :class_name => 'Here it should be either PROFILE or PAGE'
end
class Profile < ActiveRecord::Base
belongs_to :user
end
class Page < ActiveRecord::Base
belongs_to :user
end
我一直在通过 API 阅读,发现 :class_name,现在我的挑战是动态确定它。
编辑
稍微修改了 Page 模型和 User 模型。