我有一个模型 PointOfContact
,它拥有多个 Systems
。从 Systems
的角度来看,我想将 PointOfContact
标识为 technical_manager
或 project_manager
(或两者兼备)。同时仍然只在数据库中保存 PointOfContact
1 次。
我的尝试如下:
class System < ActiveRecord::Base
belongs_to :project_manager, :class_name => 'PointOfContact'
belongs_to :technical_manager, :class_name => 'PointOfContact'
end
class PointOfContact < ActiveRecord::Base
has_many :systems
end
我运行我的规范(下面是示例),我可以正确创建System
的联系点关联。但是,PointOfContact
不知道它与System的关联。为什么会这样?
@sys = System.create
@tm = PointOfContact.create
@pm = PointOfContact.create
@sys.project_manager = @pm
@sys.technical_manager = @tm
@pm.systems.should have(1).items #> expected 1 items, got 0