Skip to main content

django library to render and send report mail.

Project description

Django library to send ‘report’ mail.

Almost django management commands used as night batch processing, and then, administrators will want to know the result of it as mail.

At a glance

Consider a case which is for processing lines of csv by django’s management command. And then you want to know the result of the command by mail.

Just thing you should do is decorating handle method by apply_reporter method:

import csv
from django.core.management.base import BaseCommand

from reportmail.command import apply_reporter

class Command(BaseCommand):
    @apply_reporter("Title")
    def handle(self, reporter, filepath, *args, **options):
        for i, l in enumerate(csv.DictReader(open(filepath))):
            reporter.append('Line {}: processed {}'.format(i+1, l))

Then, when the command finish, you’ll get a admin mail like this:

Subject:
    Title
Body:
    Report of someapp.management.commands.some_of_your_command
    args: path/to/somecsv.csv
    options: settings=None,pythonpath=None,traceback=None,verbosity=1,

    result:
    Line1: processed {'somefield': 'somevalue0'}
    Line2: processed {'somefield': 'somevalue1'}
    Line3: processed {'somefield': 'somevalue2'}
    Line4: processed {'somefield': 'somevalue3'}
    ...

If you like django-reportmail, please refer the documentation. You can learn about django-reportmail enough to use it on your work.

Resources

Changes

1.3 (2015-08-20)

#6 Added .abort() feature for Reporter.

1.2.4 (2014-11-29)

#5 Officially supporting for Python3.4 and Django1.7.

1.2.3 (2014-06-20)

#3 Add manager_mail_committer.

1.2.2 (2014-06-15)

#2 Improved apply_reporter to get a committer function.

1.2.1 (2014-06-14)

Cleaned up the default template of report mail.

1.2 (2014-06-07)

  • Fixed wrong function names of committer (comitter => committer)

    • reportmail.reporter.console_comitter is now renamed as reportmail.reporter.console_committer

    • reportmail.reporter.admin_mail_comitter is now renamed as reportmail.reporter.admin_mail_committer

1.1 (2014-05-28)

  • Fixed the wrong attribute name of Reporter (comitter => committer)

1.0 (2014-05-28)

Initial release

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-reportmail-1.3.tar.gz (6.3 kB view hashes)

Uploaded Source

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