Skip to content

chris-mcdo/django-huey-email-backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

django-huey-email-backend

A simple Django email backend which uses Huey.

Usage

Add the app to your settings:

# settings.py

INSTALLED_APPS = [
    ...
    "huey.contrib.djhuey",
    "hueymail",
    ...
]

and use it as your email backend:

# settings.py

EMAIL_BACKEND = 'hueymail.backends.EmailBackend'

Last, choose which email backend Huey should dispatch to via the HUEY_EMAIL_BACKEND setting:

# settings.py

HUEY_EMAIL_BACKEND = "django.core.mail.backends.smtp.EmailBackend"

How it works

What happens when you send an email? Basically this:

  • Django creates a new instance of hueymail.backends.EmailBackend, and calls its send_messages() method with the email messages it wants to send.
  • The send_messages() method of the hueymail.backends.EmailBackend instance dispatches a Huey task called dispatch_messages(), which is responsible for sending those messages.
  • The dispatch_messages() task creates an instance of HUEY_EMAIL_BACKEND and calls its send_messages() method with the original email messages.

License

Copyright (c) 2022 Christopher McDonald

Distributed under the terms of the MIT license.

About

Django email backend using Huey

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages