使用 django-multilingual 和 localeurl。
我的主页视图的小样本:
def main(request): #View for http://www.mysite.com/
name = Dog.objects.all()[0].full_name #this is a translated field
return render_to_response("home.html", {"name" : name})
输入http://www.mysite.com/会将我重定向到http://www.mysite.com/ru/并且“name”变量会获得俄语本地化。目前还好...
但...
输入http://www.mysite.com/en/显示相同的俄语本地化变量。
在我使用调试器的实验中,我发现:
- request.LANGUAGE_CODE 根据 /en/ 或 /ru/ url 后缀正确更改(thanx to localeurl)
- 调用 multilingual.languages.set_default_language() 使“名称”变量更改本地化
问题是:我应该在我自己的每个视图中将 django-multilingual 的语言更改为 request.LANGUAGE_CODE ,还是必须自动解决并且我做错了什么?