2016-05-13 9 views
0

これは私が所有しているものであり、正常に動作しています。部屋の料金にアクセスし、total_daysにそれを掛けて合計費用を得る必要があります。メソッド内で料金列の価格設定にアクセスするにはどうすればよいですか?Railsモデルの外部表の列値にアクセスする

Booking belongs_to :room 
Room has_many :bookings, belongs_to :rate, 
Rate has_many :rooms 

def calculate_days 
    unless self.start_date.blank? || self.end_date.blank? 
    self.total_days = self.end_date - self.start_date 
    end 
end 
+0

self.rate.rate – praga2050

答えて

1

を検索することができます。

def total_cost 
    total_cost = self.room.rate.pricing * self.calculate_days 
end 

また、calculate_daysに空白の開始日または終了日があるケースも処理する必要があります。おそらくデフォルトでは0を返します。

+0

のような予約モデルからアクセスできます。それはケースチップのおかげでうまく動作します。 –

0

あなたは、直接テーブルにアクセスし、ここに方法...

を「見つける」で検索することができますここでは、すべての検索メソッド

へのリンクで行を見つける方法の一例ですid "1"。

Room.find(1) 

それとも、あなたが予約モデルである場合は、価格設定を取得するためにself.room.rate.pricingを呼び出すところbooking_date = 2016年2月13日

Room.where(booking: '2016-02-13') 
関連する問題