Skip to main content

Use an URL to configure email backend settings in your Django Application.

Project description

https://badge.fury.io/py/dj-email-url.svg

This utility is based on dj-database-url by Kenneth Reitz.

It allows to utilize the 12factor inspired environments variable to configure the email backend in a Django application.

Usage

Import the package in settings.py:

import dj_email_url

Fetch your email configuration values. The default option is fetch them from EMAIL_URL environment variable:

email_config = dj_email_url.config()

Other option is parse an arbitrary email URL:

email_config = dj_email_url.parse('smtp://...')

Finally, it is necessary to assign values to settings:

EMAIL_FILE_PATH = email_config['EMAIL_FILE_PATH']
EMAIL_HOST_USER = email_config['EMAIL_HOST_USER']
EMAIL_HOST_PASSWORD = email_config['EMAIL_HOST_PASSWORD']
EMAIL_HOST = email_config['EMAIL_HOST']
EMAIL_PORT = email_config['EMAIL_PORT']
EMAIL_BACKEND = email_config['EMAIL_BACKEND']
EMAIL_USE_TLS = email_config['EMAIL_USE_TLS']

Alternatively, it is possible to use this less explicit shortcut:

vars().update(email_config)

Supported backends

Currently, it supports:

  • SMTP backend (smtp and smtps for TLS),

  • console backend (console),

  • file backend (file),

  • in-memory backend (memory),

  • and dummy backend (dummy).

SMTP backend

The scheme smtps indicates to use TLS connections, that is to set EMAIL_USE_TLS to True.

It is possible to specify SSL using a ssl=True as a query parameter:

>>> url = 'smtp://user@domain.com:pass@smtp.example.com:465/?ssl=True'
>>> url = dj_email_url.parse(url)
>>> assert url['EMAIL_USE_SSL'] is True

File backend

The file backend is the only one which needs a path. The url path is store in EMAIL_FILE_PATH key.

Change Log

0.0.4 - 2015-03-05

  • Fix README.

0.0.3 - 2015-03-05

  • Add change log.

  • Add ssl= option as a query parameter for SMTP backend.

  • Add Travis continuous integration.

0.0.2 - 2014-03-12

  • Add Python 3 support.

0.0.1 - 2013-02-12

  • Initial version.

CI status

Development (master):

https://travis-ci.org/migonzalvar/dj-email-url.svg?branch=master

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dj-email-url-0.0.4.tar.gz (3.2 kB view details)

Uploaded Source

Built Distribution

dj_email_url-0.0.4-py2-none-any.whl (5.3 kB view details)

Uploaded Python 2

File details

Details for the file dj-email-url-0.0.4.tar.gz.

File metadata

File hashes

Hashes for dj-email-url-0.0.4.tar.gz
Algorithm Hash digest
SHA256 319a8726d1a4755b78d17f9966e07a81184929817767051096f9669d329784c8
MD5 a64628e885cb3bd80e395c52c56d701c
BLAKE2b-256 6803d31cb4b37bb39beea3cf9e68ff6ef81f7fbfc71383e393d1f7192c28f752

See more details on using hashes here.

Provenance

File details

Details for the file dj_email_url-0.0.4-py2-none-any.whl.

File metadata

File hashes

Hashes for dj_email_url-0.0.4-py2-none-any.whl
Algorithm Hash digest
SHA256 c4a62a75499183cc645f060785760946dd422000dffbcaa264953b1abd6e5255
MD5 32291151f9a9c75564ea1dd7a8282523
BLAKE2b-256 874c9c6af575c577f6d6d8d1a867c8b7967ea7758ec8c145f12f37687b1a4cec

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page