8

2つのモデルがあります。たとえば、ユーザーとクラブの属性があります。

User:
  id
  uid
  email
  etc.

Club:
  id
  player_id
  address
  supporter
  etc.

何らかの理由で、join属性はclubs.player_idNOTusers.uidclubs.player_id使用していusers.idます。とを使用して、これら2つのモデルをone-to-one関連付けに接続することは可能ですか?どうもhas_onebelongs_to

4

2 に答える 2

26

私はこれがうまくいくに違いない:

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
于 2012-05-17T18:09:33.210 に答える
0

クラブには多くのユーザーがいて、ユーザーは多くのクラブに所属できますか?その場合は、http://guides.rubyonrails.org/association_basics.htmlページでhas_and_belongs_to_many関係の関連付け方法を確認することをお勧めします。この関連付け方法を使用する場合は、user_idをclub_idに関連付けるための個別の移行テーブルを作成する必要があります。

于 2012-05-17T18:11:58.373 に答える