1
resposta

Como redirecionar quando o usuário cancelar o login com Github?

Eu gostaria também de tratar o redirecionamento para a página inicial quando o usuário cancelar o login via github, já que quando acontece isso, a página é redirecionada também para um template do allauth.

1 resposta

Olá Alysson! Tudo certo?

Quando um usuário cancela o login via GitHub, o Django Allauth pode redirecioná-lo para uma página padrão. Para personalizar esse comportamento e redirecionar o usuário para a página inicial, você pode usar a configuração de sinal do Django.

Aqui está um exemplo de como você pode fazer isso:

  1. Crie um arquivo de sinais (signals.py) no seu aplicativo Django (caso ainda não tenha um):

    from allauth.account.signals import user_logged_out
    from django.dispatch import receiver
    from django.shortcuts import redirect
    
    @receiver(user_logged_out)
    def on_user_logout(sender, request, **kwargs):
        return redirect('nome_da_sua_pagina_inicial')
    
  2. Conecte o sinal no arquivo apps.py do seu aplicativo:

    from django.apps import AppConfig
    
    class SeuAppConfig(AppConfig):
        name = 'seu_app'
    
        def ready(self):
            import seu_app.signals
    
  3. Certifique-se de que o app está registrado no seu arquivo settings.py:

    INSTALLED_APPS = [
        # outros apps
        'seu_app.apps.SeuAppConfig',
    ]
    

Com isso, quando o usuário cancelar o login, ele deve ser redirecionado para a página inicial. Lembre-se de substituir 'nome_da_sua_pagina_inicial' pelo nome correto da sua URL.

Espero ter ajudado e bons estudos!

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!