2013-11-02 8 views
6

मैं Django के send_email को कॉन्फ़िगर करने की कोशिश कर रहा हूं ताकि मैं उपयोगकर्ताओं को पासवर्ड रीसेट ईमेल भेज सकूं। अब तक मुझे काम करने के लिए कोई भाग्य नहीं है। मैं एक बुनियादी जीमेल खाते (कोई गूगल एप आदि) की स्थापना की है और मेरी Django settings.py में मेरे पास है:Django के साथ ईमेल भेजने के लिए परेशानी हालांकि smtp.gmail.com

EMAIL_HOST  = 'smtp.gmail.com' 
EMAIL_HOST_PASSWORD = 'my_password' 
EMAIL_HOST_USER = '[email protected]' 
EMAIL_PORT  = 587 
MAIL_USE_TLS = True 

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' 
DEFAULT_FROM_EMAIL = '[email protected]' 

तो मैं ऐसा करने से यह परीक्षण करने की कोशिश:

python manage.py shell 
>>> from django.core.mail import send_mail 
>>> send_mail('test', 'test', '[email protected]', ['[email protected]']) 

और मुझे त्रुटि संदेश

Traceback (most recent call last): 
    File "<console>", line 1, in <module> 
    File "C:\Program Files\Python27\lib\site-packages\django\core\mail\__init__.py 
", line 62, in send_mail 
    connection=connection).send() 
    File "C:\Program Files\Python27\lib\site-packages\django\core\mail\message.py" 
, line 255, in send 
    return self.get_connection(fail_silently).send_messages([self]) 
    File "C:\Program Files\Python27\lib\site-packages\django\core\mail\backends\sm 
tp.py", line 88, in send_messages 
    new_conn_created = self.open() 
    File "C:\Program Files\Python27\lib\site-packages\django\core\mail\backends\sm 
tp.py", line 55, in open 
    self.connection.login(self.username, self.password) 
    File "C:\Program Files\Python27\lib\smtplib.py", line 577, in login 
    raise SMTPException("SMTP AUTH extension not supported by server.") 
SMTPException: SMTP AUTH extension not supported by server. 

क्या किसी को पता है कि क्या हो रहा है! किसी भी संकेत की सराहना की है!

उत्तर

4

सुनिश्चित करें कि आप भी EMAIL_BACKEND सेटिंग निर्धारित किया है बनाओ:

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

हाँ यह पंक्ति मेरी सेटिंग्स.py में थी। अभी भी काम नहीं कर रहा है। –

0

यह आपके एसएमटीपी सर्वर विन्यास के साथ समस्या है। यह टीएलएस के साथ कॉन्फ़िगर नहीं है। आप पोस्टफ़िक्स उपयोग कर रहे हैं दस्तावेज़ देखें -
http://postfix.state-of-mind.de/patrick.koetter/smtpauth/postfix_tls_support.html

यह आप के लिए होता भी सहायक -
How to send an email with Gmail as provider using Python?

13

आप अपनी सेटिंग में लिखने में कोई त्रुटि है। टीएलएस को EMAIL_USE_TLS के साथ MAIL_USE_TLS नहीं सेट किया जाना चाहिए। 587 से कनेक्ट करते समय टीएलएस का उपयोग नहीं करते इस त्रुटि को उत्पन्न करता है।

1

जब आप मेल एक्सटेंशन हटाते हैं तो त्रुटि किसी अन्य त्रुटि में बदल जाती है। लेकिन ज्यादातर मामलों में यह वास्तविक समस्या नहीं है। एक बार जब आप अपना सेटअप सही तरीके से पूरा कर लेंगे तो यह विस्तार और बिना दोनों के साथ काम करता है।

EMAIL_HOST_USER = 'my_account' 

जाएँ https://myaccount.google.com/security और देखें कि क्या यह काम करता है जब आप पर कम सुरक्षित तल पर स्थापित करने क्षुधा बारी की अनुमति दें।

संबंधित मुद्दे