Skip to main content

Ponddy Email Notification

Ponddy email notification package.

Installation

Install with pip

pip install ponddy-email-notification

Add this app to INSTALLED_APPS in settings.py

INSTALLED_APPS = [
    ...
    'email_notifications',
]

Usage

Migrate database

python manage.py migrate

Config email in settings.py check this at Django Docs

Setup urls in urls.py

from django.urls import path

from email_notifications.views import UnsubscribeView, UnsubscribeDoneView


urlpatterns = [
    ...
    path(
        'unsubscribe/<uuid:uuid>/',
        UnsubscribeView.as_view(),
        name='unsubscribe',
    ),
    path(
        'unsubscribe/done/',
        UnsubscribeDoneView.as_view(),
        name='unsubscribe_done',
    ),
]

Now you can send email notification with admin!!!

Also we support django template, your can get user with user and unsubscribe link with unsubscribe_link, for example

Subject -> 'Hi, {{ user.username }}
Message -> '............ unsubscribe with: {{ unsubscribe_link }}'
HTML message -> '........... <a href="{{ unsubscribe_link }}">Click here to unsubscribe</a>'

Customization

If you want to custom unsubscribe url name (default is unsubscribe), add UNSUBSCRIBE_URL in settings.py

UNSUBSCRIBE_URL='{{ your unsubscribe url name }}'

If you want to custom unsubscribe done url name (default is unsubscribe_done), config it in .as_view() function

UnsubscribeView.as_view(success_url='{{ your unsubscribe done url name }}')

If you want to custom templates, config it in .as_view() function

UnsubscribeView.as_view(template_name='{{ your template name}}')
UnsubscribeDoneView.as_view(template_name='{{ your template name}}')

Example

If you want to send notification with python script

from django.contrib.auth import get_user_model

from email_notifications.models import Notification
from email_notifications.services import send_notification


User = get_user_model()


notification = Notification.objects.create(
    subject='Hi, {{ user.username }}',
    message='............ unsubscribe with: {{ unsubscribe_link }}',
    html_message='........... <a href="{{ unsubscribe_link }}">Click here to unsubscribe</a>',
)
notification.users.add(User.objects.all())  # We will automatic exclude user, if unsubscribe or no email.
send_notification('http://127.0.0.1:8000', notification)

or in view

from django.contrib.auth import get_user_model
from django.http import HttpResponse

from email_notifications.models import Notification
from email_notifications.services import send_notification


User = get_user_model()


def example_view(request):
    notification = Notification.objects.create(
        subject='Hi, {{ user.username }}',
        message='............ unsubscribe with: {{ unsubscribe_link }}',
        html_message='........... <a href="{{ unsubscribe_link }}">Click here to unsubscribe</a>',
    )
    notification.users.add(User.objects.all())  # We will automatic exclude user, if unsubscribe or no email.
    send_notification(request.build_absolute_uri('/'), notification)
    return HttpResponse('ok')

Metadata

Release files for ponddy-email-notification 0.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ponddy-email-notification 0.0.6
File Size Uploaded
ponddy-email-notification-0.0.6.tar.gz 6.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ponddy-email-notification 0.0.6
File Interpreter ABI Platform
ponddy_email_notification-0.0.6-py3-none-any.whl Python 3 none any Details

Total release size: 16.4 kB

Release files / ponddy-email-notification-0.0.6.tar.gz

Download URL ponddy-email-notification-0.0.6.tar.gz
Size 6.8 kB
Tags Source
SHA-256 checksum
How to use checksums
9a3194c5a41aa51dca622e1a625453ced10c6fad5f76d087e6e3f47246e6ba2d
BLAKE2b-256 checksum
How to use checksums
45121c8cfb656803dbcbb9d1ca727b5fd1eb1d851d1558ae02d0aefefc0b3ea0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.7.5

Release files / ponddy_email_notification-0.0.6-py3-none-any.whl

Download URL ponddy_email_notification-0.0.6-py3-none-any.whl
Size 9.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
56c1f58497e1d9a50a1ab9dc303ffe39f0ab1e4d8560e14b8e3a12b2295f9a53
BLAKE2b-256 checksum
How to use checksums
15aa36b588a1d14ab9e7b99ec030bcc117b020a09e905b09942f59ffab9ae356
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.40.0 CPython/3.7.5

Release history Release notifications | RSS feed

This release

0.0.6 This release

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page