pip install django-mult-languages
LOCALE_PATHS = (
os.path.join(BASE_DIR, 'locale'),
)
LANGUAGE_CODE = 'en-us'
MIDDLEWARE_CLASSES = (
'mult_languages.middleware.locale.MultLanguageMiddleware',
)
MULTLAGUAGES = (
('en-us', 'www.test.com'),
('en-us', 'en.test.com'),
('es', 'es.test.com'),
('pt-BR', 'pt.test.com')
)
HOSTS_DEV = ['http', '8000']
####Exemplo:
python manage.py makemessages -l en-us
python manage.py makemessages -l es
python manage.py makemessages -l pt_BR
configure the django.po
run the command:
python manage.py compilemessages
or
python manage.py compilemessages -l en
python manage.py compilemessages -l es
python manage.py compilemessages -l pt_BR
c = RequestContext(request, {
'id': request.id,
'host': request.host,
'initials': request.initials,
'languages': request.languages
})
<form action="/" method="get">
<select name="language">
{% for lang in languages %}
<option value="{{ lang.1 }}">{{ lang.0 }}</option>
{% endfor %}<br>
</select>
<input type="submit" value="Send">
</form>