在所有auth中,是否可以在某些情况下防止帐户创建,最好使用pre_social_login信号?
使用当前的开发分支,您可以轻松完成此操作。在您的设置中:
SOCIALACCOUNT_ADAPTER = 'my.adapter.MySocialAccountAdapter'
然后使用该 adapter.py 文件:
from django.http import HttpResponse
from allauth.socialaccount.adapter import DefaultSocialAccountAdapter
from allauth.exceptions import ImmediateHttpResponse
class MySocialAccountAdapter(DefaultSocialAccountAdapter):
def pre_social_login(self, request, sociallogin):
raise ImmediateHttpResponse(HttpResponse('Closed for the day'))
或者,从您的pre_social_login
信号引发类似的异常(尽管我不喜欢这种方法--请参阅https://github.com/pennersr/django-allauth/blob/master/allauth/socialaccount/adapter.py#L15文档注释)。
MY_SOCIAL_ SOCIALACCOUNT_ADAPTER
的设置? - Kane Blueriversociallogin.account.provider
,并根据提供程序的类型有选择性地引发异常。 - pennersr