django-e-mail-a-nazwa użytkownika jest aplikacja Django, który pozwala traktować użytkowników jako mające tylko adresy e-mail, zamiast nazw użytkowników.
- Zapewnia e-mail auth backend i funkcji pomocniczych do tworzenia użytkowników.
- Naszywki admin Django do obsługi poczty e-mail na podstawie uwierzytelniania użytkownika.
- Overides polecenia createsuperuser tworzenia użytkownikom tylko e-mail.
- Traktuje uwierzytelniania e-mail, jak od wielkości liter.
instalacji
Zainstaluj z PyPI:
pip zainstalować django-e-mail-as-login
Dodaj "emailusernames" do INSTALLED_APPS.
INSTALLED_APPS = (
& Nbsp; ...
& Nbsp; "emailusernames",
)
Ustaw jako backend EmailAuthBackend uwierzytelniania:
AUTHENTICATION_BACKENDS = (
& Nbsp; "emailusernames.backends.EmailAuthBackend",
)
Zastosowanie
Tworzenie użytkowników
Należy utworzyć użytkowników za pomocą funkcji create_user i create_superuser.
z emailusernames.utils importować create_user, create_superuser
create_user ('me@example.com "," hasło "),
create_superuser ('admin@example.com "," hasło "),
Odzyskiwanie użytkowników
Możesz pobrać użytkownicy, stosując wielkosc liter dopasowanie e-mail, z funkcją get_user. Podobnie można użyć user_exists aby sprawdzić, czy dany użytkownik istnieje.
z emailusernames.utils importować get_user, user_exists
user = get_user ('someone@example.com ")
...
jeśli user_exists ('someone@example.com "):
& Nbsp; ...
Aktualizacja użytkowników
Można zaktualizować adres e-mail użytkownika i zapisać instancji, bez konieczności modyfikować nazwy użytkownika.
user.email = "other@example.com"
user.save ()
Należy pamiętać, że atrybut user.username zawsze zwraca adres e-mail, ale za kulisami będzie przechowywany w wersji hashed wiadomości e-mail użytkownika.
Uwierzytelnianie użytkowników
Należy używać e-mail i hasło args w słów kluczowych połączeń do uwierzytelniania, zamiast zwykłej nazwy użytkownika i hasła.
z django.contrib.auth importu uwierzytelnienie
user = Uwierzytelnianie (email='someone@example.com ", hasło =" hasło ")
gdy użytkownik:
& Nbsp; ...
jeszcze:
& Nbsp; ...
Formy użytkownika
emailusernames udostępnia następujące formularze, które można używać do uwierzytelniania, tworzenia i aktualizacji użytkowników:
- Emailusernames.forms.EmailAuthenticationForm
- Emailusernames.forms.EmailAdminAuthenticationForm
- Emailusernames.forms.UserCreationForm
- Emailusernames.forms.UserChangeForm
Korzystanie z wbudowanego widok logowania Django
Jeśli używasz django.contrib.auth.views.login w URLconf, będziemy chcieli, aby upewnić się, że przechodzą przez EmailAuthenticationForm jako argument do widoku.
urlpatterns = patterns ('',
& Nbsp; ...
& Nbsp; url (r '^ auth / login $', 'django.contrib.auth.views.login ",
& Nbsp; {'authentication_form ": EmailAuthenticationForm},' login 'name =),
& Nbsp; ...
)
Wymagania :
- Python
- Django
Komentarze nie znaleziono