model1、model2、model3 の 3 つのモデルがあります。この3つは接続されています
class Model1 < ActiveRecord::Base
has_many :model2s
end
class Model2 < ActiveRecord::Base
belongs_to :model1s
has_many :model3s
end
class Model3 < ActiveRecord::Base
belongs_to :model2s
end
Model1 のテーブルには id が存在します。
Model2 のテーブルには、id と model1_id が存在します。
Model3 のテーブルには id と model2_id が存在します。
今、Model3Controller から table1 と table2 からデータを取得したいと考えています。これはうまくいきます。
class Model3Controller < ApplicationController
def create
@model2controller = Model2.find(params[:model3controller][:model2_id])
@model1controller = ?
end
end
model1controller の table1 から関連付けられたデータセットからデータを取得するにはどうすればよいでしょうか? model1_id を table3 に追加する必要がありましたか、それとも別の方法で呼び出すことができますか。この疑似コードのように
@model1controller = Model1.find(
params[:model3controller][:model2_id]params[:model2controller][:model1_id])