1

用户可以分配due_time_at具有TIME数据库中数据类型的字段。在他们更新一段时间后,他们可能会改变想法并且不想要特定时间。目前,当用户尝试将时间设置回NULL它时,只需将该字段设置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 回答