2013-03-05 82 views
0

其中一件事情需要我對django內部構件的一些掌握,但我仍然缺乏。我正在測試博客應用百日咳(http://django-blog-zinnia.com/)。使用DEBUG = False我得到的網站沒有靜態資產(本地,我可以理解),DEBUG = True,靜態可以,但翻譯不起作用,即網站不是以我選擇的語言呈現。我使用股票開發服務器(runserver)。爲什麼?任何人都這麼樣來解釋:) settings.py的Django internationalization not working while while DEBUG = True in zinnia博客應用程序

相關部分:

gettext = lambda s: s 

DEBUG = True 

LOCALE_PATHS = (os.path.join(os.path.dirname(__file__), 'locale')) 

USE_I18N = True 

LANGUAGE_CODE = 'pl' 

DEFAULT_LANGUAGE = 1 

LANGUAGES = (
    ('pl', gettext('Polish')), 
    ('en', gettext('English')), 
    ---snip---) 
+0

你能在你的'settings.py'發佈語言和本地化相關的設置? – 2013-03-05 14:10:23

+0

你有Locale中間件嗎? ''django.middleware.locale.LocaleMiddleware''必須添加到遊覽'MIDDLEWARE_CLASSES'中,並且必須在'SessionMiddleware'之後。 – 2013-03-05 17:38:37

+0

@AdriánLópez,thx,但是,我有它,但它不能按預期工作;) – 2013-03-05 18:18:58

回答

0

不知道如果這是你的問題的根源,但你LOCALE_PATHS設置看起來我錯了。它應該是一個元組,而你的結果是一個字符串。這不是一個絕對的路徑。

嘗試這樣的事情,而不是:

LOCALE_PATHS = (
    os.path.abspath(os.path.join(os.path.dirname(__file__), 'locale')), 
) 
+0

謝謝,它也看起來我也錯了:)我確實改變了它,似乎並不是問題的根源雖然。 – 2013-03-05 21:34:13