2010-06-21 5 views
0

Comment l'activer?L'internationalisation de Django pour les débutants

Selon cette http://docs.djangoproject.com/en/1.2/topics/i18n/internationalization/

que je mets dans mon modèle /var/www/project/template/index.html

{% load i18n %} 
{% get_current_language as LANGUAGE_CODE %} 
{% get_available_languages as LANGUAGES %} 
<html><body><h1>{% trans "It works!" $}</h1> 
get_current_language = {{ LANGUAGE_CODE }}<br> 
get_available_languages = {{ LANGUAGES}}<br></body></html> 

et dans le dossier/var/www/projet/modèle/créer locale que je ne sous-dossier lance

django-admin makemessages -l pl_PL

traitement du langage pl_PL

et il n'y a pas de fichiers dans locale/pl_pl/LC_MESSAGES/(qui sont créés automatiquement)

Que dois-je faire de plus?

Répondre

0

DAMNÉ. Je ne l'ai pas remarqué ceci:

<html><body><h1>{% trans "It works!" $}</h1> 

___________________________________________________________________ ^

Maintenant, il fonctionne .. Je veux dire - il crée django.po et django.mo. Mais je vois toujours Cela fonctionne - pas de chaînes traduites. Je crée même locales/en et locales/en_us avec des chaînes différentes - encore je vois Cela fonctionne.

SOLVED Je dois mettre/var/www/projet/templates/app/locale dans settings.py à LOCALE_PATHS variables

Non intuitive.

+0

Si vous placez le dossier locale dans le même répertoire que settings.py, vous n'avez pas besoin de spécifier l'emplacement. –

+0

mais django-admin makemessages -l pl_pl ne regarderait pas dans/var/www/project/templates, n'est-ce pas? –

0

Votre fichier d'index ne doit-il pas être dans projet/templates/(avec un s)? Sinon, avez-vous déclaré 'projet' dans votre INSTALLED_APPS?

+0

typo. Il y a des modèles pas de modèle. Oui, il est également déclaré dans settings.py –

Questions connexes