我有两个模型,例如User和Club及其属性:
User:
id
uid
email
etc.
和
Club:
id
player_id
address
supporter
etc.
由于某种原因,加入属性为clubs.player_id
,users.uid
非clubs.player_id
,users.id
。是否可以使用one-to-one
和has_one
将这两个模型与belongs_to
关联相关联? THX
答案 0 :(得分:21)
我打赌这会奏效:
class User < ActiveRecord::Base
has_one :club, :foreign_key => :player_id, :primary_key => :uid
end
class Club < ActiveRecord::Base
belongs_to :user, :foreign_key => :player_id, :primary_key => :uid
end
答案 1 :(得分:0)
俱乐部有很多用户和用户属于许多俱乐部吗?如果是这样,您可能需要查看has_and_belongs_to_many关系关联方法的http://guides.rubyonrails.org/association_basics.html页面。如果使用此关联方法,则需要创建单独的迁移表以将user_id与club_id相关联。