我有一张Staff
桌子和一张Store
桌子,但是每个商店最多可以有一个经理,每个员工最多可以管理一个商店。
为了避免4NF中的多值依赖。我想创建一个StoreManager
与另一个StoreStaffs
表相反的表,该表存储了有关员工及其工作所在的商店的信息。
不过,Store
和Staff
有一到一个通过关系StoreManager
表。
尽管Rails具有has_and_belongs_to_many
关联性,但在我的情况下,它不适用,但has_and_belongs_to_one
需要关联。
那么,是否有可能与has_and_belongs_to_one
Rails的Active Record中的关系类似?
您可以使用has_one
和has_one :through
。
以下是一些伪代码:
class Store < ActiveRecord::Base
has_one :store_manager
has_one :staff, through: :store_manager
end
class StoreManager < ActiveRecord::Base
belongs_to :store
end
class Staff < ActiveRecord::Base
end
有关更多信息,请参考ActiveRecord :: Associations#has_one。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句