Simple email confirmation for django.
A Django app providing simple email confirmation.
This app can be used to support three different ways of organizing your Users their email address(es). Each email address can be in a confirmed/unconfirmed state.
- Users have one email address that is stored on the
- Users have one primary email address stored on the
Usermodel, and have N secondary emails stored in
- Users have N email addresses stored in
Create a new User, confirm their email:
from django.core.mail import send_mail # ... email = 'firstname.lastname@example.org' user = User.objects.create_user(email, email=email) user.is_confirmed # False send_email(email, 'Use %s to confirm your email' % user.confirmation_key) # User gets email, passes the confirmation_key back to your server user.confirm_email(user.confirmation_key) user.is_confirmed # True
Add another email to an existing User, confirm it, then set it as their primary.
new_email = 'email@example.com' confirmation_key = user.add_unconfirmed_email(new_email) new_email in user.unconfirmed_emails # True send_email(new_email, 'Use %s to confirm your new email' % confirmation_key) # User gets email, passes the confirmation_key back to your server user.confirm_email(confirmation_key) new_email in user.confirmed_emails # True user.set_primary_email(new_email) user.email # firstname.lastname@example.org
pip install django-simple-email-confirmation
simple_email_confirmationto your settings.INSTALLED_APPS:
INSTALLED_APPS = ( ... 'simple_email_confirmation', ... )
Add the provided mixin to your django 1.5+ custom user model:
from django.contrib.auth.models import AbstractUser from simple_email_confirmation.models import SimpleEmailConfirmationUserMixin class User(SimpleEmailConfirmationUserMixin, AbstractUser): pass
Note: you don’t strictly have to do this final step. Without this, you won’t have the nice helper functions and properties on your
Userobjects but the remainder of the app should function fine.
Python/Django supported versions
- Python: 2.7, 3.4, 3.5 and 3.6
- Django: 1.8 to 1.11
Running the Tests
Found a Bug?
To file a bug or submit a patch, please head over to django-simple-email-confirmation on github.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|File Name & Checksum SHA256 Checksum Help||Version||File Type||Upload Date|
|django-simple-email-confirmation-0.22.tar.gz (9.8 kB) Copy SHA256 Checksum SHA256||–||Source||May 9, 2017|