私は、使用しているデータセットに対してhas_many:throughを実装することと完全に混同しています。だから、私は2つのテーブルれている - scheme_masterとscheme_detailhas_manyとの混乱:through
scheme_masterは、これらのフィールドを持っている - ID
からID、scheme_detail_idは、scheme_detailは1つの関連分野を持っている
をprimary_scheme_id のすべてのスキームscheme_masterには、プライマリスキームこれはscheme_masterテーブルの自己参照です。例えば、スキーム1は、スキーム1,2,3の主要なスキームです。
関連するコード私の質問は、私はすべての私の子供のスキームの詳細にアクセスしない方法です
scheme_master.rb
class SchemeMaster < ActiveRecord::Base
has_one :scheme_detail
has_many :child_schemes, class_name: "SchemeMaster",
foreign_key: :primary_scheme_id, primary_key: :id
end
scheme_detail.rb
class SchemeDetail < ActiveRecord::Base
belongs_to :scheme_master
end
以下の通りですスキーム? 1,2,3、私はchild_schemesのscheme_detailを参照するでしょう関連付けをしたい -
は現在、
SchemeMaster.find(1).child_schemes
は私にすべての子スキームを提供します。ありがとうございました。
'has_many:scheme_details、through::child_schemes'を試してください – jvnill
スタックレベルが深すぎます。 :( –