2014-05-02 4 views
0

Dans le cadre d'un projet d'école, j'essaie d'envoyer des e-mails via gmail.
Nous utilisons django dans un virtualenv, car nous utilisons des paquets python qui ne sont pas actuellement installés (principalement Pillow). La configuration e-mail à settings.py ressemble à ceci:Envoi d'e-mails avec Python 3.2, Virtualenv et Django

#Email Config 
EMAIL_HOST = 'smtp.gmail.com' 
EMAIL_PORT = 587 
EMAIL_HOST_USER = '[email protected]' 
EMAIL_HOST_PASSWORD = 'Apasswd' 
EMAIL_USE_TLS = True 
DEFAULT_FROM_EMAIL = '[email protected]' 
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' 

Cette configuration fonctionne très bien en dehors du virtualenv, mais lors de l'exécution à l'intérieur du virtualenv, je reçois ceci:

[Errno 10051] A socket operation was attempted to an unreachable network 

Que puis-je faire réparer ça? Je vous remercie.

+0

Etes-vous sûr que l'emplacement de destination est accessible (smtp.gmail.com)? Cela pourrait être un problème de réseau. –

+0

Je suis sûr que smtp.google.com est accessible depuis les ordinateurs sur lesquels nous travaillons. Avant de passer à virtualenv, nous pouvions envoyer un e-mail sans problème. – dfryer1193

Répondre

0

drop tout ce qui concerne la configuration de votre smtp et essayez ceci:

## Email 
## GMail 
EMAIL_USE_TLS = True 
EMAIL_HOST = 'smtp.gmail.com' 
EMAIL_HOST_USER = '[email protected]' 
EMAIL_HOST_PASSWORD = 'your-password' 
EMAIL_PORT = 587 
EMAIL_FROM = '[email protected]' 

vont maintenant python manage.py shell et faire ce

from django.core.mail import send_mail 

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

si [email protected] reçoit l'e-mail, tout va bien.

+0

Malheureusement, quand j'essaie cela, j'ai la même erreur que ci-dessus. – dfryer1193

Questions connexes