我对这项工作如何妥善运作感到困惑不解。 我有一个模式,与其他模式有两种联系。
公司拥有一个所有人,公司有许多雇员属于这一类用户。
我的公司模式如下:
class Company < ActiveRecord::Base
validates_presence_of :name
has_many :employee, :class_name => User
has_one :owner, :class_name => User
accepts_nested_attributes_for :owner, :allow_destroy => true
end
我的用户模式如下:
class User < ActiveRecord::Base
include Clearance::User
attr_accessible :lastname, :firstname #other attr are whitelisted in clearance gem
validates_presence_of :lastname, :firstname
belongs_to :company
end
我现在假设,这家公司有3名雇员,包括业主。 当我首次创建公司时,我把业主交给雇员,再给雇员1人,另外2人(2,3人)在雇员名单上增加,确定公司_id(用户.company=公司)。 这三个公司都有自己的公司——向公司提供,我们可以假定的是1个公司。
当我要求公司所有人时,我就有了正确的用户,我是公司。 雇员,我获得三人。
如果我把业主改为用户2,则将用户1自动从雇员中删除,将其公司开到零。 这是一种罚款,如果我把他作为简单雇员回来,所有工作都是好的。
铁路如何知道什么? 我指的是,它如何知道雇员是所有人,而不仅仅是雇员? 图表中没有对此作出定义。
我有感受,我应当扭转业主协会,使公司成为用户。