django-socialregistration is a Django app that enables developers to add alternative registration methods based on third party sites.
Installation:
#. Add the *socialregistration* directory to your *PYTHON_PATH*.
#. Add *socialregistration* to your *INSTALLED_APPS* settings of Django.
#. Add *socialregistration.urls* to your *urls.py* file.
Configuration:
Facebook Connect
#. Add *FACEBOOK_API_KEY* and *FACEBOOK_SECRET_KEY* to your settings file
representing the keys you were given by Facebook.
#. Add *socialregistration.auth.FacebookAuth* to *AUTHENTICATION_BACKENDS* in your settings file.
#. Add tags to your template file:
{% load facebook_tags %}
{% facebook_button %}
{% facebook_js %}
Twitter
#. Add the following variables to your *settings.py* file with the values you
were given by Twitter:
TWITTER_CONSUMER_KEY
TWITTER_CONSUMER_SECRET_KEY
TWITTER_REQUEST_TOKEN_URL
TWITTER_ACCESS_TOKEN_URL
TWITTER_AUTHORIZATION_URL
#. Add *socialregistration.auth.TwitterAuth* to *AUTHENTICATION_BACKENDS* in your settings file.
#. Add tags to your template file:
{% load twitter_tags %}
{% twitter_button %}
Other OAuth Services
There is an example of how FriendFeed integration could work. *socialregistration.models* provides a *FriendFeedProfile* model to save account data, *socialregistration.auth* provides examples for different auth backends for different service providers, *socialregistration.utils* provides a Twitter and FriendFeed interface and *socialregistration.urls* provides examples based on Twitter and FriendFeed how to hook in more OAuth based services.
OpenID
#. Add *socialregistration.auth.OpenIDAuth* to *AUTHENTICATION_BACKENDS* in your settings file.
#. Add tags to your template file:
{% load openid_tags %}
{% openid_form %}
Other Information
If you don't wish your users to be redirected to the setup view to create a username but rather have a username generated for them, set *SOCIAL_GENERATE_USERNAME* in your settings file to True.
Product's homepage
Requirements:
· Python
· Django
· oauth
· python-openid
· pyfacebook