cakenp链接数据HABTM by JOIN需要两个相关数据吗?

时间:2012-03-02 12:22:36

标签: cakephp join

这应该是一个简单的是/否答案,所以这里。

如果我设置了3个表,2个典型记录集和1个通过2个表的id连接它们,我是否需要两个表中的id才能在连接表中有一个条目?

该场景是Jobs表和Parts表,由JobsParts表链接。但是某些部分不在Parts表中,它们只是属于Job的自由文本条目(以避免库存控制问题)。

希望这足以解释我的问题。

由于

BTW使用CakePHP 2.0

1 个答案:

答案 0 :(得分:1)

对于数据库健全性,我会说连接表'jobs_parts'应该都有两个ID。

如果您尝试将自由格式部件输入到连接表中,您不仅会增加连接表的大小,而且还有效地失去了扩展/扩展的能力 - 即。如果你想为这个未知部分添加更多字段怎么办?或者如果它在您的正常零件表中实际上是您想要的一部分......它会让您感到困惑。

处理自由形状零件与实际零件还有其他选择......

  • 在零件表中有一个字段,它是一个tinyint(1),表示它是否是经过验证的零件
  • 或制作UnknownParts模型/表格

在我看来,为了便于理解和未来对您的数据库/网站的更新等具有逻辑意义。而IMO,在联接表中添加一个自由形式的部分将不适合该法案。