使用Django Translation的用户代理语言

时间:2013-09-14 05:16:19

标签: django django-i18n

将用户代理语言和django i18n结合起来的最佳方法是什么? 示例:我在settings.py中设置了LANGUAGES:

LANGUAGES = (
    ('en', ('English')),
    ('pt-br', ('Brazilian Portuguese')),
)

如果客户端用户代理默认配置为葡萄牙语,则Django i18n机器将使用巴西葡萄牙语作为我网站的默认语言,否则将保留为英语

使用基于用户代理默认语言还是基于客户端IP位置的语言是否更好?

1 个答案:

答案 0 :(得分:2)

我会选择用户代理,因为用户可以在浏览器中设置他的首选语言。 IP位置没有说明用户实际说的语言,用户也没有任何影响。在这两种情况下,您仍然可以在页面上提供语言选择器。