django-rosetta es una aplicación que facilita enormemente el proceso de traducción de tus proyectos y aplicaciones que utilizan internacionalización. La aplicación ofrece un interfaz muy similar al sistema de administración de Django (de hecho hace uso de sus css). Permite visualizar todos los catálogos de traducción, porcentaje de términos traducidos, etc. y realizar traducciones de un modo realmente cómodo. Para cada término de traducción muestra un enlace para sugerir la traducción adecuada que funciona gracias a la AJAX Language API de Google y que nos ahorra mucho tiempo. django-rosetta busca todos los archivos .po de tu proyecto en los siguientes directorios:
Nota: Si añades directorios a LOCALE_PATHS recuerda escribirlos con el formato 'mi/directorio/locale' sin la barra / al final ya que django-rosetta la añade automáticamente.

Incluir django-rosetta en nuestro proyecto es realmente sencillo. Una vez descargada en cualquier parte de nuestro python path añadimos 'rosetta' a nuestras INSTALLED_APPS y a continuación incluimos la entrada de la URL base para la aplicación en la URLconf de nuestro proyecto:
urlpatterns = patterns('',
# ...
url(r'^rosetta/', include('rosetta.urls')),
# ...
)
Ya tenemos django-rosetta funcionando.
Por defecto django-rosetta permite acceder al sistema de traducción a los usuarios que son administradores. Para permitir que otros usuarios puedan realizar las traducciones crea el grupo 'translators' y añádelos al mismo.
Para que django-rosetta pueda guardar los cambios realizados en los catálogos de traducción (archivos .po) necesita que el servidor web tenga permisos de escritura en esos archivos. De no tenerlos django-rosetta permite descargar el catálogo editado para no perder las traducciones realizadas. Para cualquier tema referente a internacionalización echa un vistazo a la documentación oficial.
Publicado por Antonio Melé el Miércoles 3 de Diciembre de 2008
Compártelo:
| Categorías:
internacionalización,
pluggables
Desde Yaco nos traen las aplicaciones pluggables django-inlinetrans y django-inplaceedit que permiten editar traducciones de templates y objetos de nuestros modelos desde el frontend ...
django-transmeta es una aplicación reusable que nos permite añadir traducciones a los campos de nuestros modelos. Es muy fácil de utilizar ya que crea ...
oEmbed es un formato que permite usar una representación embebida de una URL en sitios web de terceros. La API de oEmbed permite a ...
Algo interesante que nos aporta django-command-extensions es poder crear una representación gráfica de nuestros modelos (o por decirlo de otro modo nuestro esquema de ...
Por defecto Roseta considera que las claves de traducción están siempre en inglés.
En los tickets encontraréis un parche que permite personalizar el idioma.
Todavía estamos "discutiendo" con el autor sobre la mejor manera de tener esto en consideración, pero al menos temporalmente el parche permite tener un interfaz de traducción más lógico y hacer que el google translator funcione.
Saludos,
--
Antoni Aloy
Antoni, gracias por comentar lo del parche para personalizar el idioma. No lo había visto.
Un saludo!
Suscríbete a nuestro feed RSS y al feed de la comunidad para estar al tanto de todo lo que ocurre entorno a Django.
Tú también puedes escribir en éste blog. Para hacerlo basta con que nos digas sobre qué quieres escribir un artículo relacionado con Django.
Utilizar un formulario para modificar 2 modelos
Descubriendo objetos similares por sus etiquetas