Skip to main content

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

Project description

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.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-allauth-0.4.0.tar.gz (35.3 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page