1

ユーザーは、データベース内のデータ型due_time_atを持つフィールドを割り当てることができます。TIME彼らが時間を更新した後、彼らは気が変わって特定の時間を望んでいないかもしれません. 現在、ユーザーが時間を設定しようとすると、DBNULLのフィールドが設定されます。00:00これを元に戻す方法はありますnilか?

""投稿のすべての属性を強制することで、望ましい結果を得ることができました。時間を に設定したにもかかわらず、フィールド 、、 params[:something][:'due_time_at(1i)']params[:something][:'due_time_at(2i)']はまだデータが残っているようです。誰かがより良い方法を持っているなら、私に知らせてください。params[:something][:'due_time_at(3i)']""

if params[:something][:'due_time_at(4i)'] == ""
  params[:something][:'due_time_at(1i)'] = ""
  params[:something][:'due_time_at(2i)'] = ""
  params[:something][:'due_time_at(3i)'] = ""
  params[:something][:'due_time_at(4i)'] = ""
  params[:something][:'due_time_at(5i)'] = ""
end 
4

1 に答える 1

1

これはうまくいくはずです:

obj.update_attributes({:due_time_at => nil})

params ハッシュを update_attribute メソッドに渡す場合、その値を確認して、:due_time_at 値を nil に設定できます。

于 2012-11-24T14:33:13.737 に答える