Ruby:1.9.2
レール:3.0beta3
Rails3での関連付けについてサポートが必要です。
私は次のモデルを持っています(以下の抜粋を参照):
学校、州、SchoolLocale
学校のテーブルには次のフィールドがあります。
id、name、state_id、school_locale_id
状態テーブルには次のフィールドがあります。
id、abbr、name
school_localesテーブルには次のフィールドがあります。
ID、コード、名前
残念ながら、私のデータソースにはschool_localesのIDがありませんでした。したがって、schoolsテーブルの「school_locale_id」フィールドに格納されているデータは、実際にはschool_localesテーブルの「code」フィールドにマップされます。
school.rb:
class School < ActiveRecord::Base
belongs_to :state
belongs_to :school_locale
end
state.rb:
class State < ActiveRecord::Base
has_many :schools
end
school_locale.rb:
class SchoolLocale < ActiveRecord::Base
has_many :schools
end
特定の学校、たとえばSchool.find(1)のクエリが必要です。これにより、学校名、州名、および学校ロケール名が出力されます。school_localesテーブルの「code」フィールドにインデックスを追加し、それを外部キーとして指定する必要があると思いますが、よくわかりません。どんな助けでもいただければ幸いです。