如何关联列值匹配的两个模型?

时间:2015-01-28 17:03:59

标签: ruby-on-rails ruby database activerecord foreign-keys

我们说我有两个型号

ModelA:idunique_idcreated_atupdated_at

ModelB:idmodel_a_unique_idcreated_atupdated_at

那些独特的ID是字符串。

如何使用这样的列关联这些列中的值?他们之间有1:n的关系。我确实尝试使用谷歌搜索,但我空了。

编辑,当然,我的意思是记录值。

2 个答案:

答案 0 :(得分:1)

你应该可以这样做:

class A
  has_many :bs, foreign_key: :model_a_unique_id, primary_key: :unique_id
end

class B
  belongs_to :a, foreign_key: :model_a_unique_id, primary_key: :unique_id
end

答案 1 :(得分:0)

假设您正在使用MySQL,则需要使用join。您可以使用以下查询完成两个表的列的组合。

SELECT * FROM ModelA AS a 
    JOIN ModelB AS b ON a.unique_id = b.model_a_unique_id

详细了解MySQL Joins here