|
|
1
1
是的,使用多个键引用一个唯一的记录称为复合键。这种做法是好是坏取决于您的数据库模式。
假设我们有4张桌子:
我们需要一个列来存储每个表的引用。这意味着对于未使用的列,我们将得到空值。将来,如果我们引入
我们从两列开始构建对其他表的引用。但是,当我们介绍
因此,我们可以通过使用复合外键实现某种程度的规范化。如果两列都被索引,查询应该非常快。虽然它必须比使用单个外键慢,但差别是微不足道的。 通常情况下,每当您有看起来相同的数据(例如:Address)时,就很容易使用Rails的多态关联。在将多个模型耦合在一起时,应始终保持谨慎。一个很好的指标是,当你注意到自己在根据关联类型进行切换时,你已经走得太远了。一个潜在的解决方案是将公共代码重构成一个模块,并将其混合到您关心的模型中。 |
|
|
2
1
|
|
cluster1 · 采取独立的新行动的好处是什么? 1 年前 |
|
|
Robert · 使用JSON或哈希时,将NULL替换为NIL 1 年前 |
|
|
Fred Willmore · Rails控制器不呈现任何模板 1 年前 |
|
|
Diogo Amaral · 实现API请求的正确方式 1 年前 |
|
|
Meknassih · 在控制器方法中分配给模型没有任何作用 1 年前 |
|
|
Michael Ding · Rails上的默认会话到期问题 1 年前 |
|
|
Flávio · 基于另外两个生成数组 2 年前 |