aaa(id,code,name)とbbb(id,code,name)というテーブルがあり、多対多の関連を両テーブルのcode列で管理するための結合テーブルasso(id,aaa_code,bbb_code)を作成します。
このとき、modelでどのような指定をしたら良いか教えてください。
以下のように記述してrails3.0.5で試してみたのですが、assoテーブル関連を追加するとid値で書き込まれたりしてうまくいきません。よろしくお願いします。
#aaa.rb
class Aaa < ActiveRecord::Base
has_many :assos, :primary_key => :code, :foreign_key => :aaa_code
has_many :bbbs, :through => :assos
end
#bbb.rb
class Bbb < ActiveRecord::Base
has_many :assos, :primary_key => :code, :foreign_key => :bbb_code
has_many :aaas, :through => :assos
end
#asso.rb
class Asso < ActiveRecord::Base
belongs_to :aaa, :primary_key => :code, :foreign_key => :aaa_code
belongs_to :bbb, :primary_key => :code, :foreign_key => :bbb_code
end
コメント(0件)