Login, Registration, Reset password, ActivateUser


License
MIT
Install
pip install django_auth2==0.1.1

Documentation

Django AUTH

install from pypi

pip install django-auth2

local installing

git clone git@github.com:Nick1994209/django-auth2.git

python setup.pu install

else if need refactore code

pip install -e django-auth2

in project.settings

INSTALLED_APPS = [
    ...
    'django.contrib.auth',
    'django_auth2',
]

in project.urls

...
url(r'', include('django_auth2.urls')),
...

Additional

for User model (optional)

email = models.EmailField(unique=True, blank=False)
is_active = models.BooleanField()

if want send activation email for activate user

then set project.settings
DJANGO_AUTH2_SEND_ACTIVATION_EMAIL = True
# password reset days
PASSWORD_RESET_TIMEOUT_DAYS = 1

# for sedning email
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
EMAIL_USE_TLS = True
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_HOST_USER = 'my_mail@gmail.com'
EMAIL_HOST_PASSWORD = 'my_pass'
EMAIL_PORT = 587

in yor project.settings user.is_active = False

you can use celery for send mails if you virtualenv installed celery and project work with her; mails be sent from celery else if installed celery but not project now work with her; mails message is not sent [first state with celery. django]: http://docs.celeryproject.org/en/latest/django/first-steps-with-django.html

if not celery then mail will be sent (default django)

else

user.is_active = True (by default) and mail not sent

For send mail (example):

can use middleware

in settings

MIDDLEWARE = [
    ...
    'django_auth2.middleware.LoginRequiredMiddleware',
]

DJANGO_AUTH2_LOGIN_EXCEPT_URLS = [
    '/info/(.*)',
    '/index/',
]