标签: ruby-on-rails activerecord entity-relationship
我需要建模以下关系,并想了解如何正确建模。
有用户,房子,公寓,花园,家具
因此,用户可以拥有房屋或公寓,但不能同时拥有房屋或公寓。
房屋和公寓都可以有家具,但只有房子可以有花园。
所以最大的问题是用户has_one house | has_one apartment,我该如何建模?
答案 0 :(得分:2)
考虑使用单表继承(由于所有空花园有点浪费,但取决于数据库的规模,这可能不会成为问题),或者可能是多态关系(用户has_one住宅)