2016-05-26 11 views
0
Reservation has_many :bookings, has_many :extras, :through => :bookings 
Booking belongs_to :extra, belongs_to :reservation 
Extra has_many :bookings, has_many :reservations, :through => :bookings 

余分なモデルの列の値をidによって予約モデル内から取得するにはどうすればよいですか(たとえば、Extraモデルにはdaily_rate列があります。親モデル内のレールの子モデルの列の値

+0

あなたがのためにすべての予約を見つける方法を探していますが、同じようにあなたの電話をかけるように、Railsは暗黙のうちにこれを行いますIDが3の追加モデルですか? – imechemi

+0

私は何かを計算するために、idが3のExtraの* daily_rate *の値を使いたいと思います。希望は意味をなさない。 –

+2

'Extra.find(3).daily_rate'を試しましたか? – imechemi

答えて

0

2つのテーブル間でレコードをフェッチするために、リストされた結合テーブル(予約)を使用します。あなたはどうなるのid 3と余分を見つけるために、予約モデルから移動するにはExtra.find(3).reservations

obj = Reservation.find(whatever_record_id_you_are_using).extras.where(id: 3) 
+0

おそらく私の元の質問はあまり明確ではありませんでした。上記の@imechemiの上の私の回答は、私が必要とするのは、idが3のExtraの 'daily_rate'の値です。作成している新しいReservationの計算値にはその値が必要です。また、id = 3の余分なものはすでに存在します。 –

関連する問題