2013-02-20 111 views
0

我將應用程序配置爲支持2種語言:英語和意大利語。 在我的settings.py我指定的國際化相關的東西如下:Django:混合翻譯問題

USE_I18N = True 
USE_L10N = True 
USE_TZ = True 
LANGUAGES = (
    ('en', 'ENGLISH'), 
    ('it', 'ITALIAN'), 
) 

然後我創建了一個「區域設置」文件夾中的每個應用程序和使用下面的命令生成的.po /的.mo文件:

django-admin.py makemessages -l en --no-location --no-obsolete 
django-admin.py makemessages -l it --no-location --no-obsolete 
django-admin.py compilemessages 

所有的工作都很好,但我有一個模板,兩個翻譯混合起來(即:部分文本是意大利文和其他英文)。我認爲問題與我的瀏覽器(Chrome)如何發送語言標題(當前爲:Accept-Language: it,en-US;q=0.8,en;q=0.6)有關。 我的機器上的其他瀏覽器如Firefox正在發送:Accept-Language: en-US,en;q=0.5 好吧,這可能是一個與「奇怪的瀏覽器配置」有關的個人問題,但不能接受有這樣的結果......我該如何避免這個問題,並有一個連貫翻譯?

回答

0

有沒有可能是由於某些來自數據庫的內容而沒有提供翻譯?

在另一方面,它可能是在你的.po文件或.html文件呈現多領域的問題(確保一切{%的反...%}包裹。

最後,如果在你的Chrome當你在意大利的網站上要求提供英文翻譯,它是否提供所有英文內容和反面背景?