http://github.com/idlesign/django-sitegate
django-sitegate is a reusable application for Django to ease sign up & sign in processes.
This application will handle most common user registration and log in flows for you.
Sign in
- username/e-mail + password
- username + password
- Yandex
Sign up
- username/e-mail + password
- invitation code + username/e-mail + password
- username + password
- username + e-mail + password
- username + password + password confirmation
- username + e-mail + password + password confirmation
Here follows the most straightforward way possible with django-sitegate
to have both sign up & sign in
functionality on your page.
Use
sitegate_view
decorator to mark your view as the one handling both signups and signins:from django.shortcuts import render from sitegate.toolbox import sitegate_view @sitegate_view # This also prevents logged in users from accessing our sign in/sign up page. def entrance(request): return render(request, 'entrance.html', {'title': 'Sign in & Sign up'})
Then in your template load
sitegate
tag library and putsitegate_signup_form
&sitegate_signin_form
tags in place where you want a registration and sign in forms to be.{% extends "_base.html" %} {% load sitegate %} {% block page_contents %} <div class="my_signin_block"> {% sitegate_signin_form %} </div> <div class="my_signup_block"> {% sitegate_signup_form %} </div> {% endblock %}
You're done. Now your site visitors have an e-mail + password form to register and username/e-mail + password form to log in.
And mind that we've barely made a scratch of sitegate. Read the docs.