2013-05-13 31 views
0

我想知道什么是最好的办法是去下面的设计问题:Rails偏好表和顶部

我有一个用户将有一个首选项表。我也会有一个属于用户的场地。我想要以下功能:

一个场地将有偏好,所有这些都将在属于用户的偏好表中设置。我希望这些是“默认”偏好。但是,每个场地都可以覆盖这些偏好。

单表继承?单独的模型,只是检查“场地偏好?”的存在?

回答

1

假设用户的默认偏好和用户的具体场地偏好具有相同的确切属性,这似乎是单表继承的一个好候选。所以,首选项将同时具有用户ID和场所ID。然后,为了确定场地的实际偏好是什么,您首先要检查该场地是否有偏好。否则,默认为用户的偏好。