gpt4 book ai didi

ruby - Time.now 与 Controller 的 Rails 问题

转载 作者:太空宇宙 更新时间:2023-11-03 16:50:55 24 4
gpt4 key购买 nike

我正在尝试做一个 Time.now当我设置其中一个变量时在我的 Controller 中。发生的事情是,当我显示它时,我得到的值为 2000-01-01 10:44:11 -0500 .当我做 <%= Time.now %>在我看来我得到了正确的时间2014-03-05 11:39:17 -0500 .

这是有原因的吗?

这是我的 Controller 代码

def create_checkout_values
@checked_out = CheckedOut.new
@checked_out.bike_id=checked_out_params[:bike_id]
@checked_out.user=User.find_by_login(checked_out_params[:user_id])
@checked_out.time_of_checkout=Time.now

@bike = Bike.find_by_bike_id(@checked_out.bike_id)
if @bike != nil
@checked_out.problem = @bike.problem_description
@checked_out.fixed = @bike.need_repair
else
@checked_out.problem = ""
@checked_out.fixed = false
end
end

最佳答案

您应该将 time_of_checkout 列的类型更改为日期时间,而不仅仅是时间。从您的代码看来,您似乎真的想在那里存储日期和时间,而不仅仅是 Time.now 的时间部分(它返回完整的日期和时间,而不仅仅是时间)。当您保存记录时,AR 仅将完整的日期时间转换(意味着:吃掉日期)到时间,这就是为什么您看到的日期是 2000 年

关于ruby - Time.now 与 Controller 的 Rails 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22203964/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com