I'm integrating django-social-auth in my existing application. I've done everything so far the only missing thing is to integrate my user model (Trainee) witch doesn't use the auth.User model to the DSA. When I try to login I get the following message:
"UserSocialAuth.user" must be a "Trainee" instance.
This is my settings:
LINKEDIN_API_KEY = 'my_key'
LINKEDIN_SECRET_KEY = 'my_key'
LINKEDIN_CONSUMER_KEY = LINKEDIN_API_KEY
LINKEDIN_CONSUMER_SECRET = LINKEDIN_SECRET_KEY
LINKEDIN_SCOPE = ['r_basicprofile', 'r_emailaddress', 'r_fullprofile']
LINKEDIN_EXTRA_FIELD_SELECTORS = ['public-profile-url', 'picture-url', 'date-of-birth']
FACEBOOK_APP_ID = os.environ.get('FACEBOOK_APP_ID')
FACEBOOK_API_SECRET = os.environ.get('FACEBOOK_API_SECRET')
FACEBOOK_EXTENDED_PERMISSIONS = ['email']
# FACEBOOK_PROFILE_EXTRA_PARAMS = {'locale': 'en_US'}
AUTHENTICATION_BACKENDS = (
# 'social_auth.backends.twitter.TwitterBackend',
'social_auth.backends.facebook.FacebookBackend',
# 'social_auth.backends.google.GoogleOAuthBackend',
# 'social_auth.backends.google.GoogleOAuth2Backend',
# 'social_auth.backends.google.GoogleBackend',
# 'social_auth.backends.yahoo.YahooBackend',
# 'social_auth.backends.browserid.BrowserIDBackend',
'social_auth.backends.contrib.linkedin.LinkedinBackend',
# 'social_auth.backends.contrib.disqus.DisqusBackend',
# 'social_auth.backends.contrib.livejournal.LiveJournalBackend',
# 'social_auth.backends.contrib.orkut.OrkutBackend',
# 'social_auth.backends.contrib.foursquare.FoursquareBackend',
# 'social_auth.backends.contrib.github.GithubBackend',
# 'social_auth.backends.contrib.vkontakte.VKontakteBackend',
# 'social_auth.backends.contrib.live.LiveBackend',
# 'social_auth.backends.contrib.skyrock.SkyrockBackend',
# 'social_auth.backends.contrib.yahoo.YahooOAuthBackend',
# 'social_auth.backends.OpenIDBackend',
'django.contrib.auth.backends.ModelBackend',
)
SOCIAL_AUTH_CREATE_USERS = False
SOCIAL_AUTH_LOGIN_REDIRECT_URL = '/'
SOCIAL_AUTH_USER_MODEL = 'trainee.Trainee'
SOCIAL_AUTH_PROTECTED_USER_FIELDS = ['email', 'username', 'name']
LOGIN_URL = '/home/'
LOGIN_REDIRECT_URL = '/'
LOGIN_ERROR_URL = '/'
SOCIAL_AUTH_PIPELINE = (
'social_auth.backends.pipeline.social.social_auth_user',
'social_auth.backends.pipeline.user.get_username',
'social_auth.backends.pipeline.user.create_user',
'social_auth.backends.pipeline.social.associate_user',
'social_account.backends.login.extra_data',
'social_auth.backends.pipeline.social.load_extra_data',
'social_auth.backends.pipeline.user.update_user_details',
# 'social_auth.backends.pipeline.associate.associate_by_email',
'social_account.backends.login.process',
)