Я хочу сохранить время в EST в моей БД. И я хочу, чтобы рельсы читали его как время, хранящееся в БД. Я изменил настройки в моей конфигурации/application.rb файл в этомRuby Rails - created_at field is no
config.time_zone = 'Eastern Time (US & Canada)'
config.active_record.default_timezone = 'Eastern Time (US & Canada)'
И теперь, когда я сохраняю записи в БД они хранятся надлежащим образом с EST в created_at поля. Второе поле создается на это прямо из Postgres:
4453 | 2015-08-26 20:04:07.023224 | mlb | team_scores_first | fg | 0 | 2015-08-24 | {"away":"NYM","home":"PHI"} | 1104 | 1103 | 541220 | {"away":-225.0,"home":185.0}
Но когда я получаю запись через рельсы она дает мне эту
<Line id: 4453, created_at: nil, league: "mlb", bet_type: "team_scores_first", period: "fg", book: 0, date: "2015-08-24", names: {"away"=>"NYM", "home"=>"PHI"}, away_team_id: 1104, home_team_id: 1103, game_id: 541220, line: {"away"=>-225.0, "home"=>185.0}>
Почему Rails возвращающегося ноль для created_at поле? Какие изменения необходимо сделать, чтобы поле created_at могло быть прочитано как дата-время, хранящееся в БД?
если я меняю это, тогда рельсы читают все в часовой пояс UTC. Я хочу EST – appleLover
В соответствии с документами он должен сделать обратное, попробуйте перезагрузить сервер. Также попробуйте установить это значение в: utc и посмотреть, дает ли это правильное время. – dinomix