Ruby on Rails
Modifier le fuseau horaire par défaut
Recherche…
Remarques
config.active_record.default_timezone détermine s'il faut utiliser Time.local (si défini sur: local) ou Time.utc (si défini sur: utc) lors de l'extraction des dates et des heures de la base de données. La valeur par défaut est: utc. http://guides.rubyonrails.org/configuring.html
Si vous souhaitez modifier le fuseau horaire Rails , mais continuer à enregistrer Active Record dans la base de données en UTC , utilisez
# application.rb
config.time_zone = 'Eastern Time (US & Canada)'
Si vous souhaitez modifier le fuseau horaire Rails ET avoir les durées de stockage Active Record dans ce fuseau horaire, utilisez
# application.rb
config.time_zone = 'Eastern Time (US & Canada)'
config.active_record.default_timezone = :local
Attention : vous devriez vraiment réfléchir à deux fois, voire à trois fois, avant de sauvegarder les temps dans la base de données au format non-UTC.
Remarque
N'oubliez pas de redémarrer votre serveur Rails après avoir modifiéapplication.rb
.
Rappelez-vous que config.active_record.default_timezone
ne peut prendre que deux valeurs
- : local (convertit dans le fuseau horaire défini dans
config.time_zone
) - : utc (convertit en UTC)
Voici comment trouver tous les fuseaux horaires disponibles
rake time:zones:all
Changer le fuseau horaire Rails, mais continuer à enregistrer Active Record dans la base de données en UTC
# application.rb
config.time_zone = 'Eastern Time (US & Canada)'
Modifier le fuseau horaire Rails ET avoir les durées de stockage Active Record dans ce fuseau horaire
# application.rb
config.time_zone = 'Eastern Time (US & Canada)'
config.active_record.default_timezone = :local