2010-08-31 10 views
11

Mi config/locales/pl.yml archivo (la muestra de here):Rails 2.3.5 I18n mes/día de traducción de nombres problema

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ń] 

En script/console:

I18n.locale = 'pl' 
=> "pl" 

Time.now.strftime("%A, %B") 
=> "Tuesday, August" 

¿Por qué? O póngalo de otra manera: ¿cómo puedo obtener los nombres de los meses traducidos? También notaré que el archivo de configuración regional definitivamente se lee, ya que incluye un montón de otras traducciones, que funcionan.

Respuesta

17

Eso depende de la versión de rieles que esté utilizando. Hay un ayudante para traducir eso, en rieles 3.0.0 (no sé de qué versión estaba disponible).

En una vista, puede escribir

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

en escritura/consola (o carriles consola), pruebe a escribir:

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

y ver si funciona. También existe la l helper (L minúscula), que es una abreviatura de localize:

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

Gracias! Se trata de usar 'localize' en lugar de' translate' helper. Por cierto, en la consola (en Rails 2.3) debería ser 'helper.localize Time.now,: format =>"% B "', no 'controller'. Y otra adición: debe tener entradas 'pl, time, formats' en' pl.yml'. –

Cuestiones relacionadas