mirror of https://github.com/django/django.git
Fix Python 3 test failure introduced in a78dd109
.
This commit is contained in:
parent
ffe8bc00bf
commit
75ef980e20
|
@ -24,7 +24,9 @@ def user_passes_test(test_func, login_url=None, redirect_field_name=REDIRECT_FIE
|
||||||
if test_func(request.user):
|
if test_func(request.user):
|
||||||
return view_func(request, *args, **kwargs)
|
return view_func(request, *args, **kwargs)
|
||||||
path = request.build_absolute_uri()
|
path = request.build_absolute_uri()
|
||||||
resolved_login_url = resolve_url(login_url or settings.LOGIN_URL)
|
# urlparse chokes on lazy objects in Python 3, force to str
|
||||||
|
resolved_login_url = force_str(
|
||||||
|
resolve_url(login_url or settings.LOGIN_URL))
|
||||||
# If the login url is the same scheme and net location then just
|
# If the login url is the same scheme and net location then just
|
||||||
# use the path as the "next" url.
|
# use the path as the "next" url.
|
||||||
login_scheme, login_netloc = urlparse(resolved_login_url)[:2]
|
login_scheme, login_netloc = urlparse(resolved_login_url)[:2]
|
||||||
|
@ -33,7 +35,8 @@ def user_passes_test(test_func, login_url=None, redirect_field_name=REDIRECT_FIE
|
||||||
(not login_netloc or login_netloc == current_netloc)):
|
(not login_netloc or login_netloc == current_netloc)):
|
||||||
path = request.get_full_path()
|
path = request.get_full_path()
|
||||||
from django.contrib.auth.views import redirect_to_login
|
from django.contrib.auth.views import redirect_to_login
|
||||||
return redirect_to_login(path, login_url, redirect_field_name)
|
return redirect_to_login(
|
||||||
|
path, resolved_login_url, redirect_field_name)
|
||||||
return _wrapped_view
|
return _wrapped_view
|
||||||
return decorator
|
return decorator
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue