我在项目中使用django-social-auth来使用户能够使用不同的社交网站(例如twitter或facebook)登录。为此,我必须在settings.py中启用不同的身份验证后端,如下所示:

AUTHENTICATION_BACKENDS = (
    'social_auth.backends.twitter.TwitterBackend',
    'social_auth.backends.facebook.FacebookBackend',
)


通过启用这些后端,我无法登录django管理页面。出现说密码用户名不适合员工用户的情况。

我已禁用了这些后端,然后管理页面可以工作,但是我无法使用其他社交网站来实现登录的功能。请帮我解决这个问题。所有建议将不胜感激。

最佳答案

django.contrib.auth.backends.ModelBackend添加到此列表:

AUTHENTICATION_BACKENDS = (
    'django.contrib.auth.backends.ModelBackend',
    'social_auth.backends.twitter.TwitterBackend',
    'social_auth.backends.facebook.FacebookBackend',
)


如果未指定AUTHENTICATION_BACKENDS,则后端列表默认为唯一的ModelBackend

关于python - 由于启用了django-social-auth后端,因此无法登录django管理页面,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19666462/

10-11 06:20