Python e Django: Noob tentando usar o django para enviar email, mas falhando miseravelmente

Oi gente, eu tô estudando o framework Django e criei um formulário para enviar mensagem - a ideia é uma área do site para o cliente enviar mensagem.

Aí eu fiz as configurações de seguranca:

No entanto, quando tento trocar:

EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'

por

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'

aparece o erro:

During handling of the above exception ([Errno 104] Connection reset by peer), another exception occurred:
  File "/home/jacksupremo/Documentos/estudoPython/web_Estudo_Python3/siteProjeto/lib/python3.10/site-packages/django/core/handlers/exception.py", line 55, in inner
    response = get_response(request)
  File "/home/jacksupremo/Documentos/estudoPython/web_Estudo_Python3/siteProjeto/lib/python3.10/site-packages/django/core/handlers/base.py", line 197, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/home/jacksupremo/Documentos/estudoPython/web_Estudo_Python3/siteProjeto/lib/python3.10/site-packages/django/views/generic/base.py", line 103, in view
    return self.dispatch(request, *args, **kwargs)
  File "/home/jacksupremo/Documentos/estudoPython/web_Estudo_Python3/siteProjeto/lib/python3.10/site-packages/django/views/generic/base.py", line 142, in dispatch
    return handler(request, *args, **kwargs)
  File "/home/jacksupremo/Documentos/estudoPython/web_Estudo_Python3/siteProjeto/lib/python3.10/site-packages/django/views/generic/edit.py", line 153, in post
    return self.form_valid(form)
  File "/home/jacksupremo/Documentos/estudoPython/web_Estudo_Python3/siteProjeto/bin/nheengaMinhaLoja/projeto_Nheenga/main/views.py", line 12, in form_valid
    fm.enviar_mensagem_email_FormaBasica()
  File "/home/jacksupremo/Documentos/estudoPython/web_Estudo_Python3/siteProjeto/bin/nheengaMinhaLoja/projeto_Nheenga/main/forms.py", line 19, in enviar_mensagem_email_FormaBasica
    sandman(subject='FALE CONOSCO:Mensagem Recebida',
  File "/home/jacksupremo/Documentos/estudoPython/web_Estudo_Python3/siteProjeto/lib/python3.10/site-packages/django/core/mail/__init__.py", line 87, in send_mail
    return mail.send()
  File "/home/jacksupremo/Documentos/estudoPython/web_Estudo_Python3/siteProjeto/lib/python3.10/site-packages/django/core/mail/message.py", line 298, in send
    return self.get_connection(fail_silently).send_messages([self])
  File "/home/jacksupremo/Documentos/estudoPython/web_Estudo_Python3/siteProjeto/lib/python3.10/site-packages/django/core/mail/backends/smtp.py", line 124, in send_messages
    new_conn_created = self.open()
  File "/home/jacksupremo/Documentos/estudoPython/web_Estudo_Python3/siteProjeto/lib/python3.10/site-packages/django/core/mail/backends/smtp.py", line 80, in open
    self.connection = self.connection_class(
  File "/usr/lib/python3.10/smtplib.py", line 255, in __init__
    (code, msg) = self.connect(host, port)
  File "/usr/lib/python3.10/smtplib.py", line 343, in connect
    (code, msg) = self.getreply()
  File "/usr/lib/python3.10/smtplib.py", line 401, in getreply
    raise SMTPServerDisconnected("Connection unexpectedly closed: "

Exception Type: SMTPServerDisconnected at /fale-conosco/

Alguém pode me ajudar? Já fiz várias pesquisas, mas quanto mais arrumo mais parece bagunçar(risos).

Esta utilizando o SMTP do Gmail? Se sim, experimente atribuir em settings.py as seguintes diretivas…

EMAIL_USE_TLS = True
EMAIL_PORT = 587

Se falhar tente remover a variável EMAIL_BACKEND

Esse é meu arquivo .env, como assim remover EMAIL_BACKEND ? Isso não iria atrapalhar o modulo is_valid e send_mail?

Definas as diretivas no arquivo settings.py e não no .env… Alem disso lembre-se de configurar o Gmail, segue um tutorial para auxiliar caso não tenha feito…


Mais informações

Sending email | Django documentation | Django



:warning: Tenha cuidado ao compartilhar informações sensíveis, como senhas em locais públicos! :warning:
Ofusque estas informações, antes de publicá-las.

2 curtidas

Valeu … vou dar uma lida, amanhã

@thespation , agradeço por cumprir seu dever como membro da equipe diolinux, porém, @null e @thespation, aquela foto tinha dados “quebrados” … Faltando ou adicionado caractéres.

1 curtida

Cara, eu fiz o que o manual diz … mas mesmo assim não consigo enviar email de verdade … só consigo usar pelo console

O que pode estar acontecendo é que o Google recentemente encerrou o suporte à Apps menos seguros, como pode conferir abaixo…

Agora o método é gerar uma senha de aplicativo, veja abaixo…

1 curtida

Caras, @null e @thespation , muito obrigado pela ajuda.
Eu li todos os artigos e escrevi, re-escrevi e tomei muito café mais consegui arrumar uma solução.
image
Junto com a orientações de vocês e esse código eu consegui criar um sisteminha kkkkkk, muito obrigado.

1 curtida

Este tópico foi fechado automaticamente 3 dias depois da última resposta. Novas respostas não são mais permitidas.