2011-01-14 58 views
5

我想在波兰语中使用不同的月份名称大小写。比如现在它的工作原理是这样的:月份名称拐点在Rails中I18n

>> I18n.l Time.now, :format => "%e %B" 
=> "14 styczeń" 

,但我想指定月份的另一种格式:

>> I18n.l Time.now, :format => "%e %Q" 
=> "14 stycznia" 

翻译月份名称是在pl.date.month_names我pl.yml文件。我不想改变它。在另一种情况下,我可以添加pl.date.another_month_names,但我不知道如何使I18n.l方法使用它。

那么我该如何存档呢?其他解决方案(帮助者,自定义方法等)也是受欢迎的。

+0

你打一个已经困扰本地化人员很长时间一个艰难的课题 - 如何处理非英语更复杂。您在下面提出的作为自己问题的答案的解决方案,不仅仅是一种解决方案,更是一种解决方法,但它似乎是本地化获得更复杂的变调支持之前的最佳方法,至少类似于多元化已有的东西。 – silverdr 2016-08-24 14:51:15

回答

5

由于没有人回答我的问题,我找到了一个解决方案。

我只是创造了另一个翻译,例如alt_pl.yml和我说我的自定义月份名称,然后:

>> I18n.l Time.now, :format => "%e %Q", :locale => :alt_pl 
=> "15 stycznia" 
3

我曾与德国翻译奇怪的月份名称类似的问题。 我必须在我的locale.yml配置月份名称,现在它按预期工作:

de: 
    defaults: &defaults 
    month_names: 
     [~, Januar, Februar, März, April, Mai, Juni, Juli, August, September, Oktober, November, Dezember] 
    formats: 
     default: "%d. %B %Y" 
     short: "%d.%m.%Y" 
    date: 
    <<: *defaults 
    time: 
    <<: *defaults