我使用Django创建两种语言的Web项目:英语和德语。 该文档的默认语言是英语,我用德语翻译了它,并创建了一个.po文件。Django:错误的语言偏好
我的想法是,如果有人说德语,浏览器的语言环境设置为“德”,Django应该切换到德语(我提供的翻译)。但在其他情况下,它应该切换到英语。
问题是,它正好相反,我不知道为什么!
现状:如果浏览器的语言环境设置为英语,则网站以英语显示。但在任何其他情况下,它都以德语显示。
LANGUAGE_CODE = 'en-us'
_ = lambda s: s
LANGUAGES = (
('en', _('English')),
('de', _('German')),
)
中间件设置正确,locale-path也是! 当我测试网站时,我清除了所有的cookie和缓存。 我试图提供两种翻译(germand和英语,尽管它已经用英文写成),但仍然具有相同的效果。
感谢您的帮助。
请参阅get_language_from_request函数。了解如何选择默认的语言代码。 – sergzach 2012-04-25 10:41:32
尝试使用该功能进行调试。 django/utils/translation/trans_real.py – sergzach 2012-04-25 10:47:09