我有一个用户模型:
users
-id
-external_id
sales
-id
-external_id
所以我的关联模型看起来像是:
class Sale < ApplicationRecord
belongs_to :user
end
class User < ApplicationRecord
has_many :sales
end
如何通过列&#39; external_id&#39;链接关联。 ?
答案 0 :(得分:1)
你可以在这里使用foreign_key。
class Sale < ApplicationRecord
belongs_to :user, foreign_key: :external_id
end
class User < ApplicationRecord
has_many :sales, foreign_key: :external_id
end
答案 1 :(得分:0)
我不确定您是否希望列名称为external_id
,或者您是否想知道如何获取外部ID(外键)。我将假设后者,因为这是通常建立关系数据库的方式。
制作模型时,您可以这样做,例如:
rails g model user email:string password:string
rails g model sale user:references amount:decimal
这将创建如下所示的表:
Users
email: string
password: string
Sales
user_id: integer
amount: decimal
其中user_id
是与该销售相关联的用户的外键,因为用户具有许多销售并且销售属于用户。
请记住:1的id在许多人身上。