【发布时间】:2016-05-12 13:32:27
【问题描述】:
我是 Ruby/Ruby on Rails 的新手,我想知道是否可以从我的数据库中的 events 表中获取 datetime 条目 :starts_at 并从中获取仅代表小时值的整数?
日期时间':starts_at'的布局:
YYYY-MM-DD HH:MM:SS
e.g. 2016-01-03 11:05:00
我想要的只是代表小时的“11”,所以我可以将它设置为变量“start_hour”。
我不知道如何首先从数据库中获取我的:starts_at 值,但这里有一些代码尝试显示我的意思。
在做:
events.each do |event|
start_time = event(:starts_at.hour) #is this how to obtain :starts_at?
end
将返回“11:00”而不是“11”,我如何将其缩小为“11”?如果时间是“08:00”,应该是“8”?
【问题讨论】:
-
event.starts_at会给你分贝值。然后就可以使用 strftime 来得到想要的格式了 -
我试过了,但我的 IDE 在starts_at 下划线说“找不到starts_at”
-
在编写 ruby 代码时,IDE 警告可能是错误的。运行测试或运行您的应用以检查它是否有效
-
但它对任何其他领域都没有这样做,只是starts_at?好的,我会运行它
标签: ruby-on-rails ruby sqlite datetime