Rails在两个表上自定义foreign_key名称

我有两个模型,例如User和Club及其属性:

User: id uid email etc. 

 Club: id player_id address supporter etc. 

出于某种原因,join属性是带有users.uid clubs.player_idusers.uid不是带有users.id 。 是否可以使用has_onebelongs_to将这两个模型与one-to-one关联连接起来? 谢谢

我打赌这会奏效:

 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 

俱乐部有很多用户和用户属于许多俱乐部吗? 如果是这样,您可能需要查看http://guides.rubyonrails.org/association_basics.html页面,了解has_and_belongs_to_many关系关联方法。 如果使用此关联方法,则需要创建单独的迁移表以将user_id与club_id相关联。