私はこれを正しく理解できないようです。私は関係を通して多くを持っているだけで機能していません。設定は次のとおりです。
class Group < ActiveRecord::Base
belongs_to :user
has_many :groups_phone_numbers, :dependent => :destroy
has_many :phone_numbers, through: :groups_phone_numbers
attr_accessible :name
end
class PhoneNumber < ActiveRecord::Base
belongs_to :user
has_many :responses
has_many :groups_phone_numbers
has_many :groups, through: :groups_phone_numbers
attr_accessible :label, :number
end
class GroupPhoneNumber < ActiveRecord::Base
belongs_to :group
belongs_to :phone_number
end
私は複数形のすべてのバリエーションを試しましたが、初期化されていないエラーを乗り越えることができません。私は何が間違っているのですか?データベース(結合モデル)のテーブルは、groups_phone_numbersと呼ばれます。
正確なエラー(gはグループです):
1.9.3p0 :002 > p g.phone_numbers
NameError: uninitialized constant Group::GroupsPhoneNumber
結合テーブルを作成した移行:
class CreateGroupPhoneNumbersJoinTable < ActiveRecord::Migration
def change
create_table(:groups_phone_numbers) do |t|
t.references :group
t.references :phone_number
t.timestamps
end
end
end
ありがとう