2012-07-27 65 views
1

我已經安裝了我的python AppEngine,可以使用i18n國際化支持。在代碼中從語言環境獲取文本可以正常工作,而Django模板中的{%trans「x」%}不會。GAE - {%trans%}在django模板中不起作用,而ugettext()不起作用

以下是我在一個示例模板:

{% load i18n %} 
{% trans "Home" %} 
Language: {{ LANGUAGE_CODE }} 

,每次總是輸出「家」和語言是空的。當我在代碼中編寫_(「Home」)時,一切都很好,我會翻譯它。

我的文件夾結構:

/ 
/lib - third parties 
/locale 
/locale/en 
/locale/en/LC_MESSAGES 
/locale/ru_RU 
/locale/ru_RU/LC_MESSAGES 
/static - static files 
/source - python files 
/source/templates - django templates 

在我的app.yaml

libraries: 
    - name: django 
    version: "1.2" 

任何想法?

編輯: 這裏是我的測試項目的鏈接,它說明了這個問題......只有幾個文件在那裏。 https://skydrive.live.com/redir?resid=C010011792A4B538!131

回答

0

關於{{ LANGUAGE_CODE }},你必須settings.py背景處理器i18n這樣的配置:

TEMPLATE_CONTEXT_PROCESSORS = (
    ... 
    'django.core.context_processors.i18n', 
    ... 

但我不認爲這是你的問題的templatetag {% trans %}融洽。

+0

試過了,沒有什麼改變......如果你有幾分鐘的時間,看一下我上一分鐘前上傳的示例項目。 – Mikhail 2012-07-28 11:26:42