django-allauth设置为松弛

时间:2018-08-27 13:42:58

标签: python django slack django-allauth

如何获取闲散用户的avatar_url? 我使用django-allauth == 0.36.0

我写了自定义提供程序,因为在0.30.0版本中,我可以使用方法get_avatar_url()获取化身,但在0.30.0版本中,它是行不通的。

也许我在其他设置中写了错误的字段?

SOCIALACCOUNT_PROVIDERS = {

            'Custom': {
                'SCOPE': ['identity.basic', 'identity.email','identity.avatar'],
                'FIELDS': ['user.image_192',],
                }
    }

这是我自定义的松弛供应商的代码。

provider.py

from allauth.socialaccount.providers.slack.provider import  SlackProvider, SlackAccount


class CustomSlackProvider(SlackProvider):
    id = 'custom'
    name = 'Custom'

    account_class = SlackAccount

    def get_default_scope(self):
        return ['identity.basic', 'identity.email',
                'identity.avatar', 'identity.team']

provider_classes = [CustomSlackProvider]

urls.py

from allauth.socialaccount.providers.oauth2.urls import default_urlpatterns
from .provider import CustomSlackProvider

urlpatterns = default_urlpatterns(CustomSlackProvider)

views.py

from allauth.socialaccount.providers.oauth2.views import (
    OAuth2CallbackView,
    OAuth2LoginView,
)

from allauth.socialaccount.providers.slack.views import SlackOAuth2Adapter
from .provider import CustomSlackProvider


class CustomSlackOAuth2Adapter(SlackOAuth2Adapter):
    provider_id = CustomSlackProvider.id

oauth2_login = OAuth2LoginView.adapter_view(CustomSlackOAuth2Adapter)
oauth2_callback = OAuth2CallbackView.adapter_view(CustomSlackOAuth2Adapter)

apps.py

from django.apps import AppConfig


class CustomSlackProviderConfig(AppConfig):
    name = 'aht_slack_provider'

    def ready(self):
        import aht_slack_provider

0 个答案:

没有答案