Django Dynamic Email Settings - Change your email configuration without interrupting service.

jamiecounsell jamiecounsell Last update: Aug 22, 2022

Django Dynamic Email Settings

image1 image2 image3 image4

A reusable Django application, admin panel, and EmailBackend that allowsemail configuration to be changed while the server is running. The goalof the project is to be the absolute easiest way to get email configuredacross multiple environments.

image5

Quickstart

  • Install Django Dynamic Email Settings:

    $ pip install django-des
  • Add it to your `INSTALLED_APPS`:

    INSTALLED_APPS = (    ...    'des',    ...)
  • Add the dynamic email configuration email backend to settings.py

    EMAIL_BACKEND = 'des.backends.ConfiguredEmailBackend'
  • Run manage.py migrate des

  • To enable test email support, add Django DES's URL patterns:

    from des import urls as des_urlsurlpatterns = [    ...    url(r'^django-des/', include(des_urls)),]

Settings

  • DES_TEST_SUBJECT: Set to override the default test email subjectline. (Default: "Test Email")

    Example:

    DES_TEST_SUBJECT = "My New Subject"
  • DES_TEST_TEXT_TEMPLATE: Set to override the template used fortext test emails. Note that this is a template file location, not atemplate string. (Default: "des/test_email.txt")

    Example:

    DES_TEST_TEXT_TEMPLATE = "myapp/email/test_email.txt"
  • DES_TEST_HTML_TEMPLATE: Set to enable HTML emails and use thetemplate provided as the text/html content. (Default: None)

    Example:

    DES_TEST_HTML_TEMPLATE = "myapp/email/test_email.html"

Features

  • Configure email on the fly, no need to restart the server
  • Send test emails from the Django Admin panel
  • Test text and HTML email sending
  • Supports third party mail packages like django-mailer

Support

Python

  • 2.7
  • 3.4
  • 3.5
  • 3.6

Django

  • 1.8
  • 1.9
  • 1.10
  • 1.11
  • 2.0

Running Tests

Does the code actually work?

source <YOURVIRTUALENV>/bin/activate(myenv) $ pip install -r requirements_dev.txt(myenv) $ pip install -r requirements_test.txt(myenv) $ tox

Credits

Tools used in rendering this package:

Subscribe to our newsletter