MCPcopy
hub / github.com/django/django / login

Method login

django/contrib/admin/sites.py:416–449  ·  view source on GitHub ↗

Display the login form for the given HttpRequest.

(self, request, extra_context=None)

Source from the content-addressed store, hash-verified

414 @method_decorator(never_cache)
415 @login_not_required
416 def login(self, request, extra_context=None):
417 """
418 Display the login form for the given HttpRequest.
419 """
420 # Since this module gets imported in the application's root package,
421 # it cannot import models from other applications at the module level,
422 # and django.contrib.admin.forms eventually imports User.
423 from django.contrib.admin.forms import AdminAuthenticationForm
424 from django.contrib.auth.views import LoginView
425
426 redirect_url = LoginView().get_redirect_url(request) or reverse(
427 "admin:index", current_app=self.name
428 )
429 if request.method == "GET" and self.has_permission(request):
430 # Already logged-in, redirect accordingly.
431 return HttpResponseRedirect(redirect_url)
432
433 context = {
434 **self.each_context(request),
435 "title": _("Log in"),
436 "subtitle": None,
437 "app_path": request.get_full_path(),
438 "username": request.user.get_username(),
439 REDIRECT_FIELD_NAME: redirect_url,
440 }
441 context.update(extra_context or {})
442
443 defaults = {
444 "extra_context": context,
445 "authentication_form": self.login_form or AdminAuthenticationForm,
446 "template_name": self.login_template or "admin/login.html",
447 }
448 request.current_app = self.name
449 return LoginView.as_view(**defaults)(request)
450
451 def autocomplete_view(self, request):
452 return AutocompleteJsonView.as_view(admin_site=self)(request)

Callers 2

process_requestMethod · 0.45
openMethod · 0.45

Calls 10

has_permissionMethod · 0.95
each_contextMethod · 0.95
LoginViewClass · 0.90
reverseFunction · 0.90
get_full_pathMethod · 0.80
get_redirect_urlMethod · 0.45
get_usernameMethod · 0.45
updateMethod · 0.45
as_viewMethod · 0.45

Tested by

no test coverage detected