代码之家  ›  专栏  ›  技术社区  ›  Paweł Gościcki Ywain

Rails 2.3.5 I18n月/日名称转换问题

  •  11
  • Paweł Gościcki Ywain  · 技术社区  · 14 年前

    config/locales/pl.yml here ):

    pl:
      date:
        day_names: [Niedziela, Poniedziałek, Wtorek, Środa, Czwartek, Piątek, Sobota]
        month_names: [~, Styczeń, Luty, Marzec, Kwiecień, Maj, Czerwiec, Lipiec, Sierpień, Wrzesień, Październik, Listopad, Grudzień]
    

    script/console :

    I18n.locale = 'pl'
    => "pl"
    
    Time.now.strftime("%A, %B")
    => "Tuesday, August"
    

    为什么?或者换一种方式-我怎样才能得到翻译的月份名称?我还要注意的是,locale文件肯定是可读的,因为它包含了一堆其他的翻译,所有这些都可以工作。

    1 回复  |  直到 14 年前
        1
  •  17
  •   Hugo Peixoto    14 年前

    这取决于您使用的rails版本。 在rails3.0.0上,有一个助手可以翻译它(我不知道它来自哪个版本)。

    在一个视图中,你可以写

    localize Time.now, :format => '%A, %B'
    

    在脚本/控制台(或rails控制台)中,尝试键入:

    controller.localize Time.now, :format => '%A, %B'
    

    看看能不能用。 还有 l localize :

    controller.l Time.now, :format => '%A, %B'