Witam.
Problem mam taki że jeżeli robię insert lub update do bazy to w trybie developerskim ma created_at i update_at prawidłowe a w production jest godzina do tyłu.
W jednym i drugim trybie pracuję na tej samej bazie (problem jest i na bazie sqlite i na mysql, sprawdzałem na railsach 2.3.5 i 2.2.2)
w enviroment.rb mam config.time_zone = 'Warsaw'
Konsola w jednym i drugim trybie zwraca
Nie widzę, żeby była jakaś różnica w tej kwestii pomiędzy trybami “development” a “production”. Utworzyłem aplikację, ustawiłem strefę czasową tak jak napisałeś i wszystko działa jak trzeba. Zwróć uwagę na jedną rzecz: niezależnie od ustawień strefy czasowej, wszystkie daty zapisywane są w bazie w UTC. Widać to np. przy inspect:
User.first.inspect
#=> "#<User id: 1, deleted_at: \"2009-12-29 14:18:21\", created_at: \"2009-12-29 14:18:21\", updated_at: \"2009-12-29 14:18:21\">"
User.first.deleted_at
#=>Tue, 29 Dec 2009 15:18:21 CET +01:00
Wywołanie inspect wypisuje “surowe” daty (tak jak są one zapisane w bazie), dopiero pobranie atrybutu ustawia właściwą strefę czasową.