Django Academy · Lekcja

login, logout i widoki uwierzytelniania

Podpinanie gotowych widoków uwierzytelniania Django

Lekcja 2 z 413 kroki

login, logout i widoki uwierzytelniania to bezpłatna lekcja Django Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Django Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Django Academy zawiera 4 lekcji w sumie.

Od weryfikacji do zalogowania

Weryfikacja użytkownika to dopiero pierwszy krok. Aby zachować zalogowanie między żądaniami, należy rozpocząć sesję za pomocą pomocniczej funkcji logowania Django. 🔑

Funkcja login()

login() przyjmuje żądanie i uwierzytelnionego użytkownika, a następnie zapisuje jego identyfikator w sesji. Kolejne żądania będą już wiedzieć, kim jest użytkownik.

from django.contrib.auth import login

Używanie login() w widoku

Po pomyślnym authenticate() należy wywołać login(request, user). Od tej chwili request.user oznacza zalogowaną osobę, a nie gościa.

if user is not None:
    login(request, user)

Funkcja logout()

Aby zakończyć sesję, należy wywołać logout(request). Usuwa ona zapisany identyfikator użytkownika oraz dane sesji powiązane z tą wizytą. 👋

from django.contrib.auth import logout
logout(request)

request.user wszędzie

Po zalogowaniu request.user jest dostępne w każdym widoku. Należy sprawdzić user.is_authenticated, aby odróżnić użytkowników od anonimowych odwiedzających.

if request.user.is_authenticated:
    name = request.user.username

Bez zbędnego kodu

Django udostępnia gotowe widoki uwierzytelniania, więc nie trzeba ręcznie tworzyć stron logowania. Obsługują one formularz, walidację i sesję.

Podłączanie adresów URL uwierzytelniania

Dołącz django.contrib.auth.urls, aby natychmiast uzyskać adresy URL logowania, wylogowania i obsługi haseł pod wybraną ścieżką.

path("accounts/", include("django.contrib.auth.urls"))

LoginView w praktyce

Wbudowany LoginView renderuje formularz i po pomyślnym przesłaniu loguje użytkownika. Wystarczy głównie dostarczyć szablon o nazwie registration/login.html.

Kontekst szablonu LoginView

LoginView przekazuje do szablonu zmienną form. Wystarczy wyrenderować ten formularz wewnątrz żądania POST, a Django zajmie się resztą.

Dokąd przejść po zalogowaniu

Ustaw LOGIN_REDIRECT_URL w ustawieniach, aby określić, dokąd użytkownicy trafią po pomyślnym zalogowaniu, na przykład do panelu użytkownika.

LOGIN_REDIRECT_URL = "/dashboard/"

Przekierowania po wylogowaniu

Powiązany LogoutView kończy sesję, a LOGOUT_REDIRECT_URL określa, dokąd zostaną następnie przekierowani wylogowani użytkownicy.

Szybkie sprawdzenie

Jaka funkcja faktycznie rozpoczyna sesję zalogowanego użytkownika?

Podsumowanie: sesje i widoki uwierzytelniania

Użyto funkcji login() i logout() do zarządzania sesjami oraz podłączono widoki uwierzytelniania Django i ustawienia przekierowań, aby uniknąć powtarzalnego kodu. ✅

Bezpłatny start

Ucz się Python dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „login, logout i widoki uwierzytelniania” jest bezpłatna?

Tak — pełny tekst „login, logout i widoki uwierzytelniania” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Django Academy, przejdź na CoddyKit PRO. Kurs Django Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „login, logout i widoki uwierzytelniania”?

Podpinanie gotowych widoków uwierzytelniania Django Ćwiczysz Django Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Django Academy?

Nie wymagamy żadnego doświadczenia. Django Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „login, logout i widoki uwierzytelniania”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Django Academy?

Tak. Każda lekcja Django Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Model User i authenticate()
  2. login, logout i widoki uwierzytelniania
  3. Rejestracja z UserCreationForm
  4. login_required i ochrona widoków
← Powrót do Django Academy