2012-10-29 1 views
5

Dans le calendrier de l'ère bouddhiste, c'est déjà 2555 ans. Quel est le moyen le plus simple de faire apparaître Date.current 2555 au lieu de 2012?Comment configurer l'application Ruby on Rails pour utiliser le calendrier bouddhiste?

MISE À JOUR

J'ai trouvé une solution pour cette tâche particulière. Il peut être facilement mis en œuvre avec juste des rails standard i18n.

config cat/locales/th.rb

{ 
    th: { 
    date: { 
     formats: { 
     default: lambda { |date, _| "%d.%m.#{date.year + 543}" } 
     } 
    } 
    } 
} 

puis il suffit d'utiliser la méthode I18n.l:

ruby-1.9.3-p194 :032 > I18n.l(Date.current) 
=> "30.10.2555" 

Répondre

2

Cela pourrait être ce que vous cherchez.

https://github.com/ai/r18n

R18n.set('th') 
R18n.l Time.now, :full #=> "1 พฤศจิกายน, 2554 12:00" 
+0

Je l'ai essayé, mais le problème est qu'il échoue si une traduction manquante (I18n :: MissingTranslationData) :(existe –

+0

dans ce cas, vous avez probablement pas installé r18n correctement. Ajouter 'petit bijou 'r18n-rails'' à votre gemfile. \ – TomDunning

Questions connexes