ruby-on-rails - Rails 从哪里获取它们的 DateTime.now?

标签 ruby-on-rails datetime

最近想换updated_at一个帖子的专栏,但没那么简单!

尽管如此,服务器时间是 12:06,当我使用控制台 (irb) 时是 12:06
还试过:

irb(main):001:0> Time.zone.to_s
=> "(GMT+03:00) Moscow"

当我这样做时:
post.update!(updated_at: DateTime.now)
=> true

如果我检索记录,结果是“2018-10-29 09:06:47”

任何帮助表示赞赏!

最佳答案

尝试使用 DateTime.current - 如果您的应用程序在一个中运行,这将获得分区时间。

从文档:

Returns Time.zone.now.to_datetime when Time.zone or config.time_zone are set, otherwise returns Time.now.to_datetime.



基本上,Time.zone应该反射(reflect)DateTime.current如果您使用时区,则 Time.nowDateTime.now将忽略任何区域。该方法的来源在这里是不言自明的:
def current
  ::Time.zone ? ::Time.zone.now.to_datetime : ::Time.now.to_datetime
end

希望有所帮助 - 如果您有任何问题,请告诉我。

关于ruby-on-rails - Rails 从哪里获取它们的 DateTime.now?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53042379/

相关文章:

ruby-on-rails - Ruby on Rails 用于开发实时应用程序?还是 Node.js?

ruby-on-rails - Rails : storing arrays in DB vs. 建立关系

ruby-on-rails - Ruby/Rails - 无法直接在 Controller 中访问 JSON 对象属性

python - 如何使 pandas merge_asof 包含所有事件而不仅仅是一个

python - 为什么萨摩亚的 pytz 和 dateutil 得到不同的结果?

ruby-on-rails - 在 Rails 3 中使用 group by 查询中以整数形式获取 COUNT(column)

ruby-on-rails - 为自定义 omniauth 策略获取 "Authentication failure! invalid_credentials: OAuth2::Error"

java - 在android中将字符串转换为日期的最佳方法

c# - 处理 DateTime 的 DBNull 值

java - 将 JAXBElement<XMLGregorianCalendar> 转换为 OffsetDateTime