Fazendo login
Parte da seção Usuários e contas do Journey de Django da Coddy. Lição 2 de 16.
O site consegue identificar quem está conectado, mas não tem uma página para fazer login. O Django tem a view LoginView. Uma linha no urls.py do projeto a adiciona, junto com as páginas de logout e de senha:
path("accounts/", include("django.contrib.auth.urls")),Agora /accounts/login/ existe, com o nome login. A view renderiza registration/login.html com um form que tem os campos username e password. Cabe a você escrever esse template: um formulário POST comum. O Django procura na pasta templates/ de cada app. O caminho começa com registration/, não com notes/, porque a view do Django não conhece seu app.
Após um login bem-sucedido, a view redireciona para LOGIN_REDIRECT_URL. O valor padrão, /accounts/profile/, não existe aqui, então defina-o em settings.py.
Desafio
FácilAdicione uma página de login.
- Em
mysite/urls.py, incluadjango.contrib.auth.urlsemaccounts/. - Crie
notes/templates/registration/login.htmlestendendonotes/base.html, que exibaformem um formulário POST com{% csrf_token %}e um botãoLog in. - Em
settings.py, definaLOGIN_REDIRECT_URLcomo"/". - Em
base.html, para visitantes que não estiverem conectados, crie um linkLog inpara{% url 'login' %}.
Entre como ada (senha coddy-pass-123): o cabeçalho diz que ada está conectada.
Experimente você mesmo
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path("admin/", admin.site.urls),
path("", include("notes.urls")),
]
Todas as lições de Usuários e contas
1Quem está visitando
Quem está visitandoFazendo loginPratique por conta própria: Playground de Django