j Ruby и ActiveRecord 5 получают дату и время в UT C, но неверное время - PullRequest
0 голосов
/ 08 мая 2020

У меня есть приложение, отличное от Rails, с ActiveRecord, MySQL и j Ruby. Недавно мы обновили activerecord 4 до 5, и у нас появилась эта проблема:

jruby-9.2.7.0 :018 > ActiveRecord::Base.default_timezone
 => :utc

jruby-9.2.7.0 :013 > date = Time.now
 => 2020-05-08 16:37:01 -0300

jruby-9.2.7.0 :016 > Term.create(version: 'some-value', created_at: date)

D, [2020-05-08T16:37:31.440094 #62090] DEBUG -- :    (79.4ms)  BEGIN TRANSACTION
D, [2020-05-08T16:37:31.561324 #62090] DEBUG -- :   Term Create (81.9ms)  INSERT INTO `terms` (`version`, `created_at`) VALUES ('some-value', '2020-05-08 19:37:01')
D, [2020-05-08T16:37:31.725987 #62090] DEBUG -- :    (162.3ms)  COMMIT TRANSACTION

=> #<Term id: 14, version: "some-value", created_at: "2020-05-08 19:37:01">

jruby-9.2.7.0 :017 > Term.last.created_at
 => 2020-05-08 16:37:01 UTC

Ожидаемое значение created_at должно быть 2020-05-08 19:37:01 UT C.

Любая помощь в том, что может происходить, приветствуется :)

1 Ответ

0 голосов
/ 10 мая 2020

Если у кого-то еще возникла эта проблема с MySQL, я исправил ее с помощью этой конфигурации в database.yml

...