繁体   English   中英

两个模型可以互相归属吗?

[英]Can two models belong_to each other?

我有两个彼此一对一的模型。 A当前有一个B。

最近,我遇到许多情况,为了简化逻辑并提高性能,A希望保留B的ID。 但是我想知道是否:

  1. 这个有可能
  2. 会违反惯例
  3. 真的有什么想法

更新

我错了,额外的外键不能使左外部联接受益。

我能想到的唯一地方是找到所有没有B的A,在我的100000+条记录中的每条都需要一个内部联接。 但是,如果有一个ID,那么我马上就能知道哪个A有一个B。

我认为这是不可能的-您必须决定在哪里保留外键。 对您而言,使用通过关联关系进行连接,并且将现有的两个模型都通过连接进行为has_one有意义吗?

另一种选择是将A id放在B上,即反规范化。 这将使您找出哪个A不带B,一个A不带B。这可能适用于报告B不经常在A之间移动的情况。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM