【发布时间】:2014-01-16 13:54:18
【问题描述】:
我正在尝试使用 I18N 将我的 Django 网站国际化。当我做makemessages时。没有得到 view.py 文本的位。我做了以下事情:
# my flow
PROJECT
- LOCALE
- MYSITE
- urls.py
- settings.py
- APP1
- views.py
- APP2
- APP3
manage.py
# settings.py
LANGUAGES = (
('it', 'Italiano'),
('en', 'English'),
)
LANGUAGE_CODE = 'it'
USE_I18N = True
LOCALE_PATHS = ('home/project/locale/',)
MIDDLEWARE_CLASSES = ( ...
'django.middleware.locale.LocaleMiddleware',
)
TEMPLATE_CONTEXT_PROCESSORS = (...,
'django.core.context_processors.i18n',
)
# views.py
from django.utils.translation import ugettext as tra
text = tra("this is a text")
...
# template.html
...
{% trans 'Dashboard' %}
....
当我执行“python manage.py makemessages.py en-l”时,从根目录(manage.py 在哪里)我只得到一个 django.po,其中包含来自 html 文件而不是来自 views.py 的文本。我也尝试使用“python manage.py makemessages.py en-l-e html,py”,但它不起作用。我哪里做错了?
【问题讨论】:
标签: python django internationalization