0

Rails ActiveRecord を介してデータベースからデータを表示しようとしています。私のモデルの 2 つの関連セクションを以下に示します。ただし、これを実行しようとすると、undefined methodalert_message. コメントするとoutrecord.alert_message、このエラーは発生しません。

私はJOIN2つのテーブルを1つに結合していると仮定しています。これは、結合されたテーブルから名前が付けられた列にアクセスできることを意味すると思いalert_messageます。では、なぜalert_message未定義と言われているのでしょうか。

ありがとうございました。

def maintenance_history
  MyRecord.where('my_records.org_id=?', self.org_id).order('vehicle_id')
end


self.my_history.joins("JOIN 
          alerts ON 
          my_records.id = my_record_id").group("box_id, 
          meter, alert_message, box_id").each do |record|
            # record.alerts.each do |item|
                csv << [record.id, 
                record.box.name,            
                number_with_precision(record.meter.to_s,
                         :precision => 0, :delimiter=> ','),
                record.alert_message, currency(0, record.parts, 1),           
                currency(0, record.labor, 1),
                currency(record.parts, record.labor, 1),
                record.vendor.name]
4

1 に答える 1