2010-01-27 5 views

Répondre

4

Vous ne suivez pas la documentation?

3 étapes:

  1. Ajouter {% load i18n %} dans le modèle (comme Michał Ludwiński dit). Mettez le {% trans %} dans vos modèles, ou _ dans le code python, etc.

  2. Construire un dictionnaire de traduction:

    • Run django-admin.py makemessages -l cn (cn = Chine code de langue) dans la racine de votre projet Django.

    • Modifier locale/cn/LC_MESSAGES/django.po. Juste sous msgid "Hello!", remplacez msgstr "" par msgstr "nihao". Ne pas modifier msgid. Vous pouvez utiliser unicode, mais j'utiliserais pinyin jusqu'à ce que vous soyez sûr que tout le reste fonctionne.

    • Run django-admin.py compilemessages

  3. traduction de configuration. Vous devrez peut-être activer un middleware.

+0

salut, wisty, je usd votre façon de le faire, 1 et 2 sont ok, et 3, je change 'LANGUAGE_CODE' dans settings.py de 'en-us' à 'cn', quand je fraie mon 127.0.0.1 : 8000, il est également anglais, – zjm1126

+0

#:. \ Views.py: 16. \ Django_authopenid \ views.py: 232 msgstr "E-mail" msgstr "邮箱" – zjm1126

1
+0

non, je ne peux pas comprendre l'API. – zjm1126

+0

Posez une vraie question, obtenez une vraie réponse. –

3

avant que vous essayez d'utiliser {% trans%} blocktag vous devez taper

{% load i18n %} 

vous pouvez utiliser la balise pour taper le texte que vous souhaitez traduire (une chose est importante - le texte devrait être dans la langue principale du projet qui est défini dans les paramètres)

si vous avez déjà un texte que vous voulez traduire le type dans vos projets répertoire principal:

./manage.py makemessages -l pl 

où "pl" peut par code de pays de la langue de choix. cette commande fera que les scripts django génèrent un fichier de localisation correct situé dans le ./locale/(language-code)/LC_MESSAGES/django.po.

après avoir fait les trucs de traduction vous tapez simplement

./manage.py compilemessages 

et qui devrait faire l'affaire.

Questions connexes