Cakephp继承了表

时间:2015-06-18 12:20:21

标签: cakephp inheritance relational-database database-table

我有三个表的以下情况,这些表继承自

contactBasics contactSales(contactBasics的外键) contactSupporters(contactBasics的外键)

  • 有关某人的一般数据存储在contactBasics
  • 有关Sales People的特定数据另外存储在contactSales
  • 有关支持人员的特定数据另外存储在contactSupporters

是否有一种很好的方法来处理,例如contactBasics和contactSales作为代码中的一个对象?

帮助表示赞赏。 远藤

1 个答案:

答案 0 :(得分:1)

假设contactSalescontactSupporters之间的数据非常相似,您可以只拥有一个“联系人”表并添加一个contact_type字段,以澄清它是哪种类型的联系人。

如果您需要其他联系方式,也可以进行扩展。

您可以使用短字符串字段并将其设置为“sales”或“supporter”,或者您可以使用int字段并且1 = = sales,2 = supporter ...等。其中哪一项取决于您的偏好和应用需求。

如果您愿意/需要,您仍然可以保留这两种型号。 In your associations, you can add conditions to differentiate between the two

(or here for cake 3)