domingo, 2 de agosto de 2009

Definir o timezone de seu projeto Rails

Se você criar um projeto rails aqui no Brasil e não definir o timezone, perceberá que as horas estarão sendo exibidas de forma errada.

Isso acontece porque a partir da versão 2.1 o Rails corrige as horas para o timezone UTC por padrão.

O timezone é definido no arquivo config/environment.rb, você encontrará a seguinte linha nesse arquivo:

config.time_zone = 'UTC'

Para saber qual é a nomenclatura do timezone da sua região você pode utilizar o comando:

rake time:zones:local

No meu caso, o resultado é:

* UTC -03:00 *
Brasilia
Buenos Aires
Georgetown
Greenland


E a opção que mais se enquadra para mim é "Brasilia", então irei alterar a linha de meu environment.rb para:

config.time_zone = 'Brasilia'

Agora basta reiniciar o servidor e as horas estarão sendo exibidas da forma correta para a minha região.

Abraços.

0 comentários: