Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Integrated set of Django applications addressing authentication, registration, account management as well as 3rd party (social) account authentication. Visit http://jug.gl for a live demo ...

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 allauth
Octocat-spinner-32 example
Octocat-spinner-32 .gitignore
Octocat-spinner-32 AUTHORS
Octocat-spinner-32 ChangeLog
Octocat-spinner-32 LICENSE
Octocat-spinner-32 MANIFEST.in
Octocat-spinner-32 README.rst
Octocat-spinner-32 TODO
Octocat-spinner-32 requirements.txt
Octocat-spinner-32 setup.py
README.rst

Django AllAuth

Integrated set of Django applications addressing authentication, registration, account management as well as 3rd party (social) account authentication.

Features

  • Signup of a both local and social accounts
  • Connecting more than one social account to a local account
  • Optional instant-signup for social accounts -- no questions asked
  • E-mail address management (multiple e-mail addresses, setting a primary)
  • Password forgotten flow
  • E-mail address verification flow
  • Supports multiple authentication schemes (e.g. login by user name, or by e-mail), as well as multiple strategies for account verification (ranging from none to e-mail verification).
  • Support for connecting multiple social accounts to a Django user account.
  • The FB access token is stored so that you can publish wall updates etc.
  • Pluggable signup form for for asking additional questions during signup.

Installation

Django

settings.py:

TEMPLATE_CONTEXT_PROCESSORS = (
    ...
    "allauth.context_processors.allauth",
    "allauth.account.context_processors.account"
)

AUTHENTICATION_BACKENDS = (
    ...
    "allauth.account.auth_backends.AuthenticationBackend",
)

INSTALLED_APPS = (
    ...
    'emailconfirmation',
    'uni_form',

    'allauth',
    'allauth.account',
    'allauth.socialaccount',
    'allauth.twitter',
    'allauth.openid',
    'allauth.facebook',

urls.py:

urlpatterns = patterns('',
    ...
    (r'^accounts/', include('allauth.urls')))

Configuration

Available settings:

ACCOUNT_EMAIL_REQUIRED (=False)
The user is required to hand over an e-mail address when signing up.
ACCOUNT_EMAIL_VERIFICATION (=False)
After signing up, keep the user account inactive until the e-mail address is verified.
ACCOUNT_EMAIL_AUTHENTICATION (=False)
Login by e-mail address, not username.
ACCOUNT_EMAIL_SUBJECT_PREFIX (="[Site] ")
Subject-line prefix to use for email messages sent. By default, the name of the current Site (django.contrib.sites) is used.
ACCOUNT_SIGNUP_FORM_CLASS (=None)
A string pointing to a custom form class (e.g. 'myapp.forms.SignupForm') that is used during signup to ask the user for additional input (e.g. newsletter signup, birth date). This class should implement a 'save' method, accepting the newly signed up user as its only parameter.
ACCOUNT_SIGNUP_PASSWORD_VERIFICATION (=True)
When signing up, let the user type in his password twice to avoid typ-o's.
ACCOUNT_UNIQUE_EMAIL (=True)
Enforce uniqueness of e-mail addresses.
ACCOUNT_USERNAME_REQUIRED (=True)
If false, generates a random username rather than prompting for one at signup.
ACCOUNT_PASSWORD_INPUT_RENDER_VALUE (=False)
render_value parameter as passed to PasswordInput fields.
SOCIALACCOUNT_QUERY_EMAIL (=ACCOUNT_EMAIL_REQUIRED)
Request e-mail address from 3rd party account provider? E.g. using OpenID AX, or the Facebook "email" permission.
SOCIALACCOUNT_AUTO_SIGNUP (=True)
Attempt to bypass the signup form by using fields (e.g. username, email) retrieved from the social account provider. If a conflict arises due to a duplicate e-mail address the signup form will still kick in.
SOCIALACCOUNT_AVATAR_SUPPORT (= 'avatar' in settings.INSTALLED_APPS)
Enable support for django-avatar. When enabled, the profile image of the user is copied locally into django-avatar at signup.
EMAIL_CONFIRMATION_DAYS (=# of days, no default)
Determines the expiration date of email confirmation mails sent by django-email-confirmation.

Facebook & Twitter

The required keys and secrets for interacting with Facebook and Twitter are to be configured in the database via the Django admin using the TwitterApp and FacebookApp models.

Something went wrong with that request. Please try again.