Question

How can I collect translation strings outside of my project folder using Django's built-in makemessages facility? The management command makemessages is very convenient and I'd like to use it for applications located in site-packages.

Was it helpful?

Solution

Other than makemessages I found PyBabel very useful. Here is a bind to Django itself: http://babel.edgewall.org/wiki/BabelDjango

OTHER TIPS

(1) Activate a virtual environment where Django is installed.

(2) Go directory of the app for which you want the messages to be generated:

$ cd path/to/app/in/site/packages/

(3) Make sure it has "locale" directory. If not - make one.

$ mkdir locale

(4) From your app directory run the following command:

$ django-admin.py makemessages -l [LANGUAGE_CODE]

Example for Dutch:

$ django-admin.py makemessages -l nl

Example for Russian:

$ django-admin.py makemessages -l ru

With symbol links (ln -s) but it's not very convenient. Usually if the apps are on PYTHONPATH shouldn't the translations folders be catched by makemessages ?

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top