yml tutorial rails number i18n ruby-on-rails ruby-on-rails-3 localization locale number-to-currency

ruby-on-rails - tutorial - rails i18n



conversión de locale number_to_currency (2)

¿Por qué number_to_currency(33.50, :locale => :fr) muestra $ 33.50? Debería mostrarlo en una moneda diferente según la configuración regional. Espero un resultado de 33,50 € .

¡Muchas gracias!


Para que esto funcione, necesita tener un archivo de config/locales/fr.yml regional en config/locales/fr.yml para que esto funcione. Puede obtenerlo aquí: https://github.com/svenfuchs/rails-i18n/blob/master/rails/locale/fr.yml .

La opción :locale solo declara a Rails la configuración regional que desea que sea. Rails no tiene todas las traducciones para cada idioma en el proyecto, por lo que debe incluir estos archivos de traducción usted mismo.


Sé que esto es un poco tarde. Pero solo quería expalir la respuesta anterior. Úsalo como sigue:

number_to_currency(aNumber, :locale => :fr)

Esto usa el archivo config/locales/fr.yml . Puede formar su propio formato de moneda y definirlo en config/locales/fr.yml . El archivo contendrá lo siguiente:

fr: number: currency: format: unit: ''€'' delimiter: '','' separator: ''.'' precision: 2 format: ''%u%n''

unit es el símbolo de la moneda. También puedes formatear toda la cadena con el format: Más sobre esto Here