当用户选择一种语言时,我想i18n.set_language()
将该语言存储到最终可用的用户配置文件中。
Django 也应该使用它来发现我的语言。
这是个好主意吗 ?如果是,我该怎么做?
请参阅如何从外部 Django 应用程序覆盖视图 -> 如何在不分叉的情况下覆盖 -> 覆盖视图以使“i18n.set_language() 将语言存储到最终可用的用户配置文件中”
复制django-user-accounts 中间件并更改get_language_for_user
.
将中间件放在 之后django.middleware.locale.LocaleMiddleware
,因为这会根据请求设置默认语言,因此对于匿名访问者仍然有用,因此您希望在您自己的中间件之前执行它。