class Agents << ActiveRecord::Base
belongs_to :customer
belongs_to :house
end
class Customer << ActiveRecord::Base
has_many :agents
has_many :houses, through: :agents
end
class House << ActiveRecord::Base
has_many :agents
has_many :customers, through: :agents
end
どのようにAgents
モデルに追加しCustomer
ますか?
これは最善の方法ですか?
Customer.find(1).agents.create(customer_id: 1, house_id: 1)
上記はコンソールからは問題なく動作しますが、実際のアプリケーションでこれを実現する方法はわかりません。
house_id
入力としても使用されるフォームが顧客のために入力されていると想像してください。次に、コントローラで以下を実行しますか?
def create
@customer = Customer.new(params[:customer])
@customer.agents.create(customer_id: @customer.id, house_id: params[:house_id])
@customer.save
end
has_many :through
テーブルにレコードを追加する方法について全体的に混乱していますか?