2

我正在使用 django 1.11 开发一个多语言网站,

'django.middleware.locale.LocaleMiddleware' 中间件和

i18n_patterns

我在视图中使用@login_required 装饰器(用于在用户未登录时将用户重定向到登录页面),但它不会根据当前语言重定向用户。例如,当(未登录)用户转到 /fr/user/profile 时,它​​将被重定向到 /en/accounts/login?next=/fr/user/profile(但它应该重定向到 /fr/accounts/login? next=/fr/user/profile )(因为默认网站语言是 en(english) 它总是重定向到默认语言)

4

1 回答 1

0

不要使用硬编码设置,Django 可以像这样处理 url 名称:

LOGIN_URL = 'registration:login'

签出:https ://github.com/django/django/blob/stable/1.11.x/django/contrib/auth/views.py#L255

于 2020-01-06T11:28:13.543 回答