皆さん。
コントローラーで次のコード ブロックを発行すると、結果の SQL にモデルの列/属性が 1 つ含まれません。
dev_total = DeviceTotal.where(time_stamp: @time_stamp).first_or_create {|dt|
dt.dev_utc = @utc,
dt.value = @grand_total,
dt.production = @net_weight,
dt.device_id = @device.id,
dt.var = @device.variable.symbol
}
結果の SQL:
INSERT INTO "device_totals" ("created_at", "device_id", "production", "time_stamp",
"updated_at", "value", "var") VALUES ($1, $2, $3, $4, $5, $6, $7)
RETURNING "id" [["created_at", Wed, 09 Oct 2013 22:54:04 UTC +00:00],
["device_id", 1], ["production", 80.38], ["time_stamp", Wed, 09 Oct 2013 22:53:59
UTC +00:00], ["updated_at", Wed, 09 Oct 2013 22:54:04 UTC +00:00], ["value",
847.25], ["var", "FRL"]]
ご覧のとおり、列「dev_utc」は INSERT コマンドに含まれていません。他のすべての属性は DB に保存されます。これは BigInt 型の列です。
他のすべては正常に動作します。私のコードを何十回もチェックしました。
手がかりはありますか?