Como é possível realizar o Login com e-mail, fiquei com essa dúvida.
Como é possível realizar o Login com e-mail, fiquei com essa dúvida.
Olá Raphael,
A solução mora em uma alteração lá no capítulo 11. No formulário que você criou, o RegistrarUsuarioForm
, você precisa alterar de:
User.objects.filter(username=self.data['nome']).exists()
para
User.objects.filter(username=self.data['email']).exists()
Veja que isso é apenas a lógica para saber se o usuário existe ou não.
Agora você precisa alterar no lugar que grava o usuário no banco. É necessário alterar RegistraUsuarioView
:
Mudar de
#cria o usuario
usuario = User.objects.create_user(dados_form['nome'], dados_form['email'], dados_form['senha'])
para:
#cria o usuario
usuario = User.objects.create_user(dados_form['email'], dados_form['nome'], dados_form['senha'])
Agora, estamos passando como primeiro parâmetro o e-mail do usuário.
Obrigado Flávio! Fiz um trabalho pra pós baseado nas suas aulas. Agora, mantive o Nome, pois, aparentemente nem o professor sabia disso. Obrigado.
Excelente Raphael, sucesso na pós e bom estudo!