Rails i18n — devise i18n (Internacionalización)

Cuando desarrollamos una aplicación en ruby on rails que queremos que sea en español y muchas de las veces ya funciona lo que queríamos lograr, unas de las cosas que nos surge cuando vemos las validaciones de modelos y otros mensajes es : “vamos a traducirlos” , y mas cuando usamos en nuestra aplicación la gema devise. Devise es una gema que nos ayuda muchísimo a la hora de usar login en nuestra aplicación , esta gema trae mensajes de validación y unas vistas , pero como estamos trabajando una aplicación en español todos los mensajes de devise y sus vistas también tenemos que traducirlas. Bueno eso no es problema , vamos aprender como hacerlo .

Inicialmente vamos a descargar los siguientes archivos de este repositorio :

luego de haberlos descargados los vamos a ubicar en la carpeta de nuestro proyecto.

config/locales

cuando ya tenemos los archivos .yml en la carpeta indicada vamos al siguiente archivo: config/application.rb

Después de estar en el archivo vamos a descomentar las siguientes lineas:

la ruta donde estarían los archivos:

config.i18n.load_path += Dir[Rails.root.join(‘config’, ‘locales’, ‘**’, ‘*.{rb,yml}’).to_s]

lenguaje que vamos a usar (en este casa ‘es’ para español)

config.i18n.default_locale = :es

Super , si corremos en este momento nuestra aplicación ya tendríamos la validación de los modelos y de devise en lenguaje español , fácil cierto ? pero las vistas de devise siguen en inglés .

Bueno ahora las vistas de devise siguen en inglés , debemos traducirlas .

Una manera para hacer este trabajo seria tomar cada vista de devise que vamos a usar y cambiarle el texto manualmente , pero eso no queremos ni vamos hacer en este articulo.

Mirando en la red me conseguí con esta gema que de una manera más profesional podemos traducir las vistas de devise. vamos hacerlo:

agregamos la siguiente linea al Gemfile

gem ‘devise-i18n-views’

luego corremos el bundle install

bueno aquí ya deberíamos tener instalada la gema , ahora vamos a generar las vistas , si anteriormente ya habíamos generado las vistas de devise las sobrescribirá con el siguiente comando :

rails g devise:views:i18n_templates

y listo de esta manera ya tenemos las vistas de devise listas , compruébalo tú y corre tu aplicación . XD

si queremos personalizar nuestra traducción de las vistas también es posible visita la documentación de la gema :

Para seguir con la traducción de nuestro backend esta gema nos podria servir de mucho.

https://github.com/svenfuchs/i18n-active_record

saludos espero que este articulo haya servido de mucho , al menos cuando vamos a traducir nuestra aplicación .

Show your support

Clapping shows how much you appreciated Miguel Casas Perea ツ’s story.