gpt4 book ai didi

ruby-on-rails - Rails 应用程序中日期时间(时区)的奇怪行为

转载 作者:数据小太阳 更新时间:2023-10-29 09:02:26 26 4
gpt4 key购买 nike

在我们的 rails 3.2 应用程序中,我们已经配置,

config.time_zone = 'London'
config.active_record.default_timezone = :local

并且在 postgresql 中还将时区配置为“欧洲/伦敦”。

过去一周,我们的应用程序日期时间字段无法正常使用时区。

例如,如果我们创建一个提醒 start_date at 2015-08-18 10AM。它在 postgres 数据库中创建 `2015-08-18 10:00:00。

在模板中显示时,

提醒 开始日期:2015-08-18 10AM (2015-08-18 10:00:00 +0100 )

但是,(不总是)现在经常显示 UTC 时间。

提醒 开始日期:2015-08-18 9AM (2015-08-18 09:00:00 UTC)

它无法在开发中重现。

如果我们重新启动 unicorn 服务器,那么它将在 4 小时内不会发生。

有人遇到过这种问题吗?

最佳答案

我通过在 ApplicationController 中添加 around filter 解决了这个问题。

around_filter :use_time_zone

private

def use_time_zone(&block)
Time.use_zone('London', &block)
end

因此,每当默认时区更改为 UTC 时,它将覆盖并设置为 BST

关于ruby-on-rails - Rails 应用程序中日期时间(时区)的奇怪行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32039900/

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