- February 20, 2010
- mail debug trap email intercept testing
- 1 (after 1 ratings)
By using this simple wrapper instead of Django's default send_mail function, you gain the peace of mind of knowing that when settings.DEBUG == True, all the emails will be sent to you instead of the original recipient. Handy for testing.
1 2 3 4 5 6 7 8
from django.core.mail import send_mail as django_send_mail from django.conf import settings def send_mail(subject, message, from_email, recipient_list, fail_silently=False, auth_user=None, auth_password=None, connection=None): if settings.DEBUG: message = "%s\n\n=========== DEBUG Email Intercepted =============\nOriginal Recipients: %s" % (message, ",".join(recipient_list)) recipient_list = [settings.SERVER_EMAIL] django_send_mail(subject, message, from_email, recipient_list, fail_silently=False, auth_user=None, auth_password=None, connection=None)