MacOSXでRoR 3.1 + Postgresを使用しています
私の作成機能では、これがあります:
def create
@power_plant_substrate = PowerPlantSubstrate.new(params[:power_plant_substrate]) <= 1
@trade = params[:power_plant_substrate][:trade]
respond_to do |format|
if @power_plant_substrate.save
...
end
(1) params[:power_plant_substrate] で新しいオブジェクトをインスタンス化する必要があります
問題:
新しいオブジェクト @power_plant_substrate を作成した直後に、いくつかの属性が利用可能です。
params[:power_plant_substrate] の値を確認すると (コンソールへのトレース)、すべてのフィールドが正しく渡されたことを確認できます。
{"power_plant_id"=>"161", "substrate_id"=>"213", "quantity"=>"1", "periodicity"=>"yearly", "trade"=>"wanted", "price_per_unit"=>"0.00", "total_price"=>"0.00", "currency"=>"USD", "address"=>", Reserved", "transport"=>"pickup_only", "description"=>"afewrqe", "latitude"=>"", "longitude"=>""}
ただし、保存した直後にオブジェクトを確認しました(@power_plant_substrate.save)。「貿易」属性はもう割り当てられていません。
after_create を呼び出すメソッドでモデル内の同じ属性にアクセスしようとしましたが、同じ問題が発生しました。
ただし、レコードは、データベースで正しく割り当てられたすべてのフィールドで使用できます。
保存後に @power_plant_substrate オブジェクトが「完全に」割り当てられたように見えないのはなぜですか?
お役に立てれば幸いです。