Skip to main content

Send emails with Django template system

Project description

==========
Django-Mail-Templated
==========
:Info: Send emails using Django template system
:Author: Artem Rizhov (https://github.com/artemrizhov)

Overview
=================
This is a tiny wrapper around the standard EmailMessage class and send_mail()
function. Just pass template_name and context as the first parameters then use
as normal.

Installation
=================
Run::

$ pip install django-mail-templated

And register the app in your settings file::

INSTALLED_APPS = (
...
'mail_templated'
)

Usage
=================
Write a template to send a plain text message. Note that first and last newline
will be removed::

{% block subject %}
Hello {{ user.name }}
{% endblock %}

{% block body %}
This is a plain text message.
{% endblock %}

Or for an html message::

{% block subject %}
Hello {{ user.name }}
{% endblock %}

{% block html %}
This is an <strong>html</strong> message.
{% endblock %}

Or for a multipart message you can use both blocks::

{% block subject %}
Hello {{ user.name }}
{% endblock %}

{% block body %}
This is a plain text message.
{% endblock %}

{% block html %}
This is an <strong>html</strong> message.
{% endblock %}

Or leave out some block to set it manually later with EmailMessage class::

{% block body %}
This is a plain text message.
{% endblock %}

Now you can send it::

from mail_templated import send_mail
send_mail('email/hello.tpl', {'user': user}, from_email, [user.email])

Or if you wish to add more control over message creation then use the class form::

from mail_templated import EmailMessage
message = EmailMessage('email/hello.tpl', {'user': user}, to=[user.email])
# ... attach a file, etc
message.send()

That's all. Please create an issue at GitHub if you have any notes,
...or just email :)

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

django-mail-templated-1.0.0.tar.gz (3.8 kB view details)

Uploaded Source

File details

Details for the file django-mail-templated-1.0.0.tar.gz.

File metadata

File hashes

Hashes for django-mail-templated-1.0.0.tar.gz
Algorithm Hash digest
SHA256 b79c5d1b4844f6c114149279374cd1f4889ec1c0d55582bebaf3f1b48169c3a6
MD5 24f73412d0158900c6dc79ef51c786b4
BLAKE2b-256 25fbc3146531a15802c6a7b12bba9236200f174ec0ae349f72015dd62f4b16e5

See more details on using hashes here.

Supported by

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