2
因此,我使用django 1.8創建了一個新的網站,該網站必須翻譯成葡萄牙語。即使使用LOCALE_PATHS,Django翻譯也不起作用
所以使用Django自己的工具,我加入到我的中間件:
'django.middleware.locale.LocaleMiddleware',
我也加入到我的context_processors:
'django.template.context_processors.i18n',
和配置我的語言設置:
USE_I18N = True
gettext = lambda s: s
LANGUAGE_CODE = 'en'
LOCALE_PATHS = (
os.path.join(BASE_DIR, 'locale'),
)
print LOCALE_PATHS
LANGUAGES = (
('pt-br', gettext('Portuguese')),
('en', gettext('English')),
)
TIME_ZONE = 'America/Sao_Paulo'
USE_L10N = True
USE_TZ = True
我也在我的文檔頂部導入了:
from django.utils.translation import ugettext as _
然後我加了標籤:
{% trans "text" %}
在我的模板,用適當的文本。從那以後,我跑:
python manage.py makemessages -l pt-br
然後我翻譯我的.po文件的一切,最後我用它編譯:
python manage.py compilemessages
但是,當我跑我的網站它仍然是英文的。 我的瀏覽器是在pt-br上,我也有一個工作示例,但該特定網站未被翻譯。 我確實添加了i18n網址。
有人可以幫我嗎?我錯過了什麼?
我讓'pt-br'的所有代碼如您所說,但是使用了 'python manage.py makemessages -l pt_br'和 'python manage.py compilemessages -l pt_br'。有效。謝謝! :) – reinaldoluckman
我很高興幫助! – ViniBiso