/django-sitegate

Reusable application for Django to ease sign up & sign in processes

Primary LanguagePythonBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

django-sitegate

http://github.com/idlesign/django-sitegate

What's that

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
  • Google

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

Quick example

Here follows the most straightforward way possible with django-sitegate to have both sign up & sign in functionality on your page.

  1. 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'})
  2. Then in your template load sitegate tag library and put sitegate_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.

Documentation

http://django-sitegate.readthedocs.org/