A Django app to manage newsletter subscriptions
Project description
diddemo-newsletter
Demo Newsletter is a Django app that manages your newsletter subscriptions
Quick start:
-
Add "newsletter" to your INSTALLED_APPS setting like this.
INSTALLED_APPS = [ ... 'newsletter', ]
-
Include the polls URLconf in your project urls.py like this.
path('', include('newsletter.urls', namespace="news")),
-
Run "python manage.py migrate" to create the NewsLetter models.
Optional settings:
-
NL_REDIRECT_HTML
Defailts to 'news/news_letter.html'. You can overwrite this settings by adding NL_REDIRECT_HTML = 'your_html_location' to your settings.py file.
-
UNSUBSCRIBE_DICT
Defaults to {}. You can overwrite this setting by adding UNSUBSCRIBE_DICT = { "1": "Your first unsubscribe reason", "2": "Your second unsubscribe reason", "3": "Your third unsubscribe reason", "4": "Your forth unsubscribe reason" }, to your settings.py file.
Note: "Not specified" will be used when KeyError is raised when processing an unsubscribe request
Note: More settings coming soon
Configuration:
Main model: NewsLetter Model form: NewsLetterForm - the form has an email field only TemplateTag: {% nl_unsubscribe email=user_email reason=your_reason_key %}
-
Code example:
views.py:
from django.views.generic.edit import FormView from newsletter.forms import NewsLetterForm class ExampleView(FormView): template_name = "example.html" form_class = NewsLetterForm success_url = "/news-letter" def form_valid(self, form): form.save() return super().form_valid(form)
urls.py:
from django.urls import path from . import views app_name = "your_app_name" urlpatterns = [ path("example", views.ExampleView.as_view(), name="example"),
example.html:
<form class="your-classes" id="newsletterform" method="POST"> {% csrf_token %} <input type="email" class="your-classes" placeholder="Your email address.." id="{{form.email.id_for_label}}" name="{{form.email.name}}"> <button class="your-classes" type="submit">Subscribe</button> </form>
Your email html:
{% load news_tags %}
...<a href="{% nl_unsubscribe email=email_address reason=reason_key %}">unsubscribe</a>
...
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for django-manage-newsletter-0.0.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0fc8939501152df943f5b06c55f3effdfd7c0e7ac2da111c322c159475a8c0a0 |
|
MD5 | e147c6826a78adef6a503989a38720be |
|
BLAKE2b-256 | 52cf389d52a6cefce3db8355a009e5f281543e25b3820649bcfe2f1ecca2d7b4 |
Hashes for django_manage_newsletter-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4648f80addd7c9af0b047cca939d4a92fbdaf11a11d7f16566b5a4e0a8b47606 |
|
MD5 | 0888aac62332ea722f1a95c5c8469836 |
|
BLAKE2b-256 | 10da1edc8e6e79bf4a41440a46b2ababf15ac641f0a9500298b6e58652161594 |