2015-07-09 8 views
17

starałem wysłać pocztę przy użyciu smtp.gmail.com w Django 1.8Django 1.8 wysyłania poczty za pomocą gmail SMTP

Moja settings.py zawiera:

EMAIL_BACKEND = 'django_smtp_ssl.SSLEmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 465
EMAIL_HOST_USER = 'sarath4coding'
EMAIL_HOST_PASSWORD = '*********'
DEFAULT_EMAIL_FROM = „sa [email protected]

from django.core import mail 
mail.send_mail('subject','message','[email protected]',['[email protected]']) 

Ale mam ten błąd

Traceback (most recent call last): 
    File "<console>", line 1, in <module> 
    File "/home/manager/dj1.8/local/lib/python2.7/site-packages/django/core/mail/__init__.py", line 62, in send_mail 
    return mail.send() 
    File "/home/manager/dj1.8/local/lib/python2.7/site-packages/django/core/mail/message.py", line 303, in send 
    return self.get_connection(fail_silently).send_messages([self]) 
    File "/home/manager/dj1.8/local/lib/python2.7/site-packages/django/core/mail/backends/smtp.py", line 100, in send_messages 
    new_conn_created = self.open() 
    File "/home/manager/dj1.8/local/lib/python2.7/site-packages/django_smtp_ssl.py", line 14, in open 
    self.connection.login(self.username, self.password) 
    File "/usr/lib/python2.7/smtplib.py", line 622, in login 
    raise SMTPAuthenticationError(code, resp) 
SMTPAuthenticationError: (534, '5.7.14 <https://accounts.google.com/ContinueSignIn?sarp=1&scc=1&plt=AKgnsbuze\n5.7.14 2FDKQt2Dlo2vqFIvbr6DnBItwWvh9DChPwbeTZO66N91gzmiA437Vqs80cZ9-8u13vxq5a\n5.7.14 bVahzO_BQcZ53yKbJ-YbAlmFE1XIK7MfH97O0wI1lvzpTG_WAHuTIBF0HD1GA2icUoUemt\n5.7.14 ErZn4qb942aAIMG103FnrzLp4txXTbXC-wGLpaz5yvnUN5thahvv3-RiIVW8F1QddZKZlg\n5.7.14 qQKpqWw56zr1AcO2s_oaBEt556fQ> Please log in via your web browser and\n5.7.14 then try again.\n5.7.14 Learn more at\n5.7.14 https://support.google.com/mail/answer/78754 kx14sm6579665pab.0 - gsmtp') 

Próbowałem wszystkiego Dokument mówi, a następnie wiele proponowanych rozwiązań.

jak https://accounts.google.com/DisplayUnlockCaptcha, umożliwiając niskie aplikacje zabezpieczeń itp

ale nadal mam błędy

Może ktoś powiedzieć, jak prawidłowo skonfigurować Django 1.8 do wysyłania poczty za pomocą Gmaila.

+0

miałem podobną konfigurację, ale z: 'EMAIL_HOST_USER = 'sarath4coding @ gmail.com'' i' EMAIL_PORT = 587' i 'EMAIL_USE_TLS = TRUE – Gocht

Odpowiedz

5

zastąpić w pliku settings.py:

EMAIL_BACKEND = 'django_smtp_ssl.SSLEmailBackend' 

przez

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

1

Działa to dla mnie:

settings.py

EMAIL_BACKEND = 'django_smtp_ssl.SSLEmailBackend' 
EMAIL_HOST = 'smtp.gmail.com' 
EMAIL_HOST_PASSWORD = 'test' 
EMAIL_HOST_USER = '[email protected]' 
EMAIL_PORT = 587 
EMAIL_USE_TLS = True 

Unlock Captcha: https://accounts.google.com/DisplayUnlockCaptcha

views.py

email = EmailMessage(
    'subject_message', 
    'content_message', 
    'sender smtp gmail' +'<[email protected]>', 
    ['[email protected]'], 
    headers = {'Reply-To': '[email protected]' } 
) 
email.send() 
7

Testowałem to i działałem idealnie w django 1.8:
najpierw należy sprawdzić this link, udostępnianej przez Google, które zrobiłeś :)
zauważyć, że dla niektórych dziwnych powodów, że nie wiem, trzeba kodować tak w view.py or shell:

import django 
from django.conf import settings 
from django.core.mail import send_mail 

send_mail('Subject here', 'Here is the message.', settings.EMAIL_HOST_USER, 
     ['[email protected]'], fail_silently=False) 

również to moje ustawienia w setting.py pliku:

EMAIL_USE_TLS = True 
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' 
EMAIL_HOST = 'smtp.gmail.com' 
EMAIL_HOST_PASSWORD = 'xxxx' #my gmail password 
EMAIL_HOST_USER = '[email protected]' #my gmail username 
EMAIL_PORT = 587 
DEFAULT_FROM_EMAIL = EMAIL_HOST_USER 
15

Pamiętaj:

przejdź do Google Ustawienia konta, znajdź Zabezpieczenia -> Uprawnienia konta -> Dostęp dla mniej bezpiecznych aplikacji, włącz tę opcję.

O tej opcji: https://support.google.com/accounts/answer/6010255

+2

ewentualnie bardziej bezpieczna opcja jest Aby dodać hasło aplikacji: https://security.google.com/settings/u/1/security/apppasswords – ptim

+0

Link jest uszkodzony @ptim :( –

+0

tx @ Vini.g.fer! Ta strona pomocy wyjaśnia proces: https://support.google.com/accounts/answer/185833?hl=en – ptim

Powiązane problemy