关于构建共享两个共同点的两个表的最佳实践的建议

时间:2014-01-30 17:25:29

标签: ruby-on-rails activerecord

我正在努力为雇主和雇员制作档案。大多数属性在两个模型之间是相同的,但有一些属性仅针对员工,一些仅针对雇主。

我最好创建两个表还是有更好的方法?

1 个答案:

答案 0 :(得分:1)

一般来说,如果它们代表两个在现实生活中具有不同角色和责任的不同实体,那么你应该制作两个模型。

这将帮助您清楚地了解它,并且还可以更容易地定义两个模型(或其他模型)之间的任何关系,并保持这些关系。例如,Employee可能与Paycheck模型有某种关系,而Employer则不然。

如果你想获得幻想,你可以创建第三个模型(Human?)EmployerEmployee继承来建立共性,但这可能不是除非你强烈认为重构会提高可读性和可维护性,否则是必要的。