【发布时间】:2010-07-12 21:21:09
【问题描述】:
我们的房地产应用程序有一个表 Events,它在历史上一直通过 Event.homes_id 列链接到 Homes 表。
最近,我们首次添加了与房屋无关的事件类型,而是与房地产经纪人相关的。问题:现在将 realtor_id 列添加到 Events 表是一种好习惯吗?我对每条记录都有两列 home_id 和 realtor_id 的想法感到反感,对于任何给定的记录,其中一列将始终为空。我的老板说它很有效并且避免了创建新表的开销。这种情况的对错是什么?
上述问题的推论:我们不愿意创建新表的部分原因是我们使用的是 CakePHP,因此通过 SQL 连接对多个链接表进行绝对控制变得更加困难。 (将 Cake 的递归属性设置为最大值会降低应用程序的速度。) 使用 Cake 是否会影响数据库设计考虑?还是我们只是在使用 Cake 错误?
【问题讨论】:
-
我感受到了您对 CakePHP 递归问题的痛苦。我喜欢这个框架,但如果你不看它,它真的会远离你。话虽如此,一旦您在 CakePHP 的 find 调用中了解了 ad-hoc join 的乐趣,事情就会变得更容易处理。
-
感谢大家对这个问题的一些非常有趣的答案,涵盖了争论的两面——实用主义与以最佳方式做事。我们最终坚持了务实的(拐弯抹角?)路线 - 希望它不会在未来的日子里咬我们!
标签: mysql database-design cakephp