我有一个系统,我需要从主页上的一个登录表单登录三种用户类型:客户、公司和供应商。
我在http://github.com/binarylogic/authlogic_example创建了一个根据 AuthLogic 示例应用程序工作的用户表。我添加了一个名为“用户类型”的字段,该字段当前包含“客户”、“公司”或“供应商”。
注意:每个用户类型都包含许多不同的字段,所以我不确定单表继承是否是最好的方法(如果这个结论无效,欢迎更正)。
这是一种多态关联,其中三种类型中的每一种都用用户记录“标记”?我的模型应该如何显示,以便在我的用户表和我的用户类型客户、公司、供应商之间建立正确的关系?
非常感谢!
- - - 更新 - - -
当前设置:
#User model
class User < ActiveRecord::Base
acts_as_authentic
belongs_to :authenticable, :polymorphic => true
end
#Customer model (Company and Vendor models are similar)
class Customer < ActiveRecord::Base
has_many :users, :as => :authenticable
acts_as_authentic
end
这是设置它们的有效方法吗?