2014-07-08 70 views
0

我想設置Rails語言環境(西班牙語),但它似乎不工作。我已經把線config.i18n.locale = :esapplication.rbRails ES語言環境不工作

而且我es.yml區域文件是:

es: 
date: 
    abbr_day_names: 
    - dom 
    - lun 
    - mar 
    - mié 
    - jue 
    - vie 
    - sáb 
    abbr_month_names: 
    - 
    - ene 
    - feb 
    - mar 
    - abr 
    - may 
    - jun 
    - jul 
    - ago 
    - sep 
    - oct 
    - nov 
    - dic 
    day_names: 
    - domingo 
    - lunes 
    - martes 
    - miércoles 
    - jueves 
    - viernes 
    - sábado 
    formats: 
    default: ! '%d/%m/%Y' 
    long: ! '%d de %B de %Y' 
    short: ! '%d de %b' 
    month_names: 
    - 
    - enero 
    - febrero 
    - marzo 
    - abril 
    - mayo 
    - junio 
    - julio 
    - agosto 
    - septiembre 
    - octubre 
    - noviembre 
    - diciembre 
    order: 
    - :day 
    - :month 
    - :year 
datetime: 
    distance_in_words: 
    about_x_hours: 
     one: alrededor de 1 hora 
     other: alrededor de %{count} horas 
    about_x_months: 
     one: alrededor de 1 mes 
     other: alrededor de %{count} meses 
    about_x_years: 
     one: alrededor de 1 año 
     other: alrededor de %{count} años 
    almost_x_years: 
     one: casi 1 año 
     other: casi %{count} años 
    half_a_minute: medio minuto 
    less_than_x_minutes: 
     one: menos de 1 minuto 
     other: menos de %{count} minutos 
    less_than_x_seconds: 
     one: menos de 1 segundo 
     other: menos de %{count} segundos 
    over_x_years: 
     one: más de 1 año 
     other: más de %{count} años 
    x_days: 
     one: 1 día 
     other: ! '%{count} días' 
    x_minutes: 
     one: 1 minuto 
     other: ! '%{count} minutos' 
    x_months: 
     one: 1 mes 
     other: ! '%{count} meses' 
    x_seconds: 
     one: 1 segundo 
     other: ! '%{count} segundos' 
    prompts: 
    day: Día 
    hour: Hora 
    minute: Minutos 
    month: Mes 
    second: Segundos 
    year: Año 
errors: 
    format: ! '%{attribute} %{message}' 
    messages: 
    accepted: debe ser aceptado 
    blank: no puede estar en blanco 
    confirmation: no coincide con la confirmación 
    empty: no puede estar vacío 
    equal_to: debe ser igual a %{count} 
    even: debe ser par 
    exclusion: está reservado 
    greater_than: debe ser mayor que %{count} 
    greater_than_or_equal_to: debe ser mayor que o igual a %{count} 
    inclusion: no está incluido en la lista 
    invalid: no es válido 
    less_than: debe ser menor que %{count} 
    less_than_or_equal_to: debe ser menor que o igual a %{count} 
    not_a_number: no es un número 
    not_an_integer: debe ser un entero 
    odd: debe ser impar 
    record_invalid: ! 'La validación falló: %{errors}' 
    taken: ya está en uso 
    too_long: es demasiado largo (%{count} caracteres máximo) 
    too_short: es demasiado corto (%{count} caracteres mínimo) 
    wrong_length: no tiene la longitud correcta (%{count} caracteres exactos) 
    template: 
    body: ! 'Se encontraron problemas con los siguientes campos:' 
    header: 
     one: No se pudo guardar este/a %{model} porque se encontró 1 error 
     other: No se pudo guardar este/a %{model} porque se encontraron %{count} errores 
helpers: 
    select: 
    prompt: Por favor seleccione 
    submit: 
    create: Crear %{model} 
    submit: Guardar %{model} 
    update: Actualizar %{model} 
number: 
    currency: 
    format: 
     delimiter: . 
     format: ! '%n %u' 
     precision: 2 
     separator: ! ',' 
     significant: false 
     strip_insignificant_zeros: false 
     unit: € 
    format: 
    delimiter: . 
    precision: 3 
    separator: ! ',' 
    significant: false 
    strip_insignificant_zeros: false 
    human: 
    decimal_units: 
     format: ! '%n %u' 
     units: 
     billion: mil millones 
     million: millón 
     quadrillion: mil billones 
     thousand: mil 
     trillion: billón 
     unit: '' 
    format: 
     delimiter: '' 
     precision: 1 
     significant: true 
     strip_insignificant_zeros: true 
    storage_units: 
     format: ! '%n %u' 
     units: 
     byte: 
      one: Byte 
      other: Bytes 
     gb: GB 
     kb: KB 
     mb: MB 
     tb: TB 
    percentage: 
    format: 
     delimiter: '' 
    precision: 
    format: 
     delimiter: '' 
support: 
    array: 
    last_word_connector: ! ', y ' 
    two_words_connector: ! ' y ' 
    words_connector: ! ', ' 
time: 
    am: am 
    formats: 
    default: ! '%A, %d de %B de %Y %H:%M:%S %z' 
    long: ! '%d de %B de %Y %H:%M' 
    short: ! '%d de %b %H:%M' 
    pm: pm 

我缺少的東西?

UPDATE: application.rb

module Sushi 
    class Application < Rails::Application 

    config.i18n.locale = :es 

回答

1

在從第一個答案評論你說你正在使用

<%= lanzadera.time.strftime("%B %e, %Y at %I:%M %p") %> 

strftime然而,不國際化意識,所以你必須使用這樣

<%= l lanzadera.time, format: :long %> 

l是簡寫I18n.l如果您需要特殊格式,只需在es.yml文件的時間/格式下添加一行即可。

+1

這個技巧!我認爲I18n是自動的。非常感謝,你救了我幾個小時! – Gibson

1

我不知道,如果它只是一個複製和粘貼錯誤,但你的區域文件有錯誤的壓痕。請注意,yaml格式需要完美的縮進才能工作。

正確的文件應該是這樣的:(只摘錄:)

es: 
    date: 
    abbr_day_names: 
     - dom 
     - lun 
     - mar 
     - mié 
     - jue 
     - vie 
     - sáb 

如果你只有一個C & p錯誤,您的文件是否正確,請嘗試重新啓動服務器! (對於乘客:$ touch tmp/restart.txt)這是重新加載區域設置文件所必需的。

+0

感謝您的回覆。確實這是一個C/P錯誤...但它仍然無法正常工作。我無法理解它。 – Gibson

+0

請參閱我的application.rb更新 – Gibson

+0

順便說一下,我試圖使用。 <%= lanzadera.time.strftime(「%B%e,%Y at%I:%M%p」)%>並且那裏的東西沒有被翻譯 – Gibson