Comment envoyer des emails via Django?

Dans mon settings.py, j'ai le texte suivant:

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

# Host for sending e-mail.
EMAIL_HOST = 'localhost'

# Port for sending e-mail.
EMAIL_PORT = 1025

# Optional SMTP authentication information for EMAIL_HOST.
EMAIL_HOST_USER = ''
EMAIL_HOST_PASSWORD = ''
EMAIL_USE_TLS = False

Mon email code:

from django.core.mail import EmailMessage
email = EmailMessage('Hello', 'World', to=['[email protected]'])
email.send()

Bien sûr, si je configurer un serveur débogage via python -m smtpd -n -c DebuggingServer localhost:1025, je peux voir le message dans mon terminal.

Cependant, comment puis-je envoyer l'e-mail de ne pas le débogage du serveur, mais à [email protected]?

Après la lecture de vos réponses, permettez-moi de sortir quelque chose de tout droit:

  1. Ne pouvez-vous pas utiliser localhost(simple pc sous ubuntu) pour envoyer des e-mails?

  2. Je pensais que dans django 1.3 send_mail() est un peu obsolète et EmailMessage.send() est utilisé à la place?

  • 1. Vous pouvez utiliser localhost si vous avez un serveur SMTP qui fonctionne là-bas. 2. Le mécanisme exact est sans importance. L'important, c'est que vous avez un serveur SMTP.
  • donc, si j'ai installer postfix, je peux envoyer/recevoir des e-mails? Comment configurer postfix pour ce faire?
  • Cette question est au-delà de la portée de ce site.
  • stackoverflow.com/a/23402208/2351696
  • Pourtant, SEO nous amène à cette page, Ignacio.
  • Cette vidéo explique très bien toutes les étapes nécessaires.
  • Ne pense pas que l'utilisation d'un service tiers est le correct réponse. Il n'est pas. Vous pouvez installer un MTA comme sendmail qui vous permettra d'envoyer un email à l'échelle locale.

InformationsquelleAutor Derek | 2011-06-16