1

我正在学习铁轨,最近遇到了一个路障。任何指导表示赞赏。

我正在使用设备,并且我有一个:confirmed_atDateTime 列作为受保护的属性。所以要从我的管理界面更新它,我超级控制器更新方法并添加:

      @user.update_attribute(:confirmed_at, params[:user][:confirmed_at])
      @user.update_attribute(:school_id, params[:user][:school_id])

:school_id正确更新,但:confirmed_at日期时间始终为零。我查看了参数哈希,果然它没有,:confirmed_at但它有

      "confirmed_at(1i)"=>"2012", 
      "confirmed_at(2i)"=>"6", 
      "confirmed_at(3i)"=>"2", 
      "confirmed_at(4i)"=>"04",   
      "confirmed_at(5i)"=>"11"

Rails 似乎没有将字段的参数转换为数据库的日期时间对象。

** 如何获取这些值以:confirmed_at正确更新我的字段?

任何帮助表示赞赏。

导轨 3.1,红宝石 1.9

4

2 回答 2

1

尝试这个:

@user.update_attribute(:confirmed_at, params[:confirmed_at])

date_select 在其自己的参数中发送,而不是作为 params[:user] 哈希的一部分。

我希望这有帮助。

于 2012-06-04T22:59:01.557 回答
1

我猜你正在使用datetime_select助手。

看看这个:将数据从 `datetime_select` 转换为 DateTime 对象的 Rails 方法在哪里?

于 2012-06-04T21:21:19.323 回答