有两个模型的例子如下:
模型1
column 1 --- column 2 --- column 3
id --- fb_id --- someOtherThing
模型2
column 1 --- column 2 --- column 3
id --- fb_id --- someOtherThing
例如,fb_id是Facebook ID为big int。
如何构建从第一个模型的第2列到第二个模型的第2列的关系(例如belongs_to)?
目前我做了类似的事情:
model 1:
belongs_to :model2, :foreign_key => 'fb_id'
但是如何预先选择模型1(第2列)中必须与第二个模型列匹配的列? (我认为以这种方式从模型1中获取第1列)。
在综合中:
如何创建关系(belongs_to
或has_many
)model1(:fb_id) => model2(:fb_id)
和不 model1(:id) => model2(:fb_id)
答案 0 :(得分:1)
如果我理解你需要的是检索具有有效关联的记录,对吧?
您可以使用以下方法执行此操作:
Model1.joins(:model2 => :fb_id)
这将仅检索具有有效关联的Model1'。