gpt4 book ai didi

django-allauth 适配器重定向

转载 作者:行者123 更新时间:2023-12-02 04:55:21 24 4
gpt4 key购买 nike

我正在利用 django-allauth 为我的属性(property)管理应用程序提供 Google 身份验证。这是我正在寻找的注册工作流程:

  1. A new manager goes to a registration page with a "Signup With Google" button.
  2. They click the button and sign into Google.
  3. On the call back from Google they are presented with a form for additional info.
  4. When they submit this form their user account and manager profile is created and they are redirected to their company's homepage.

我试图通过适配器处理这个“重定向到公司主页”。我遇到的问题是“get_login_redirect_url”函数是在初始 Google 登录之后执行的,但是在我收集他们的工作时间表的注册表单之前执行的,所以我在适配器重定向上得到了一个 DoesNotExist,因为它是在 managerprofile 之前调用的已创建。

执行这些重定向的正确方法是什么?

settings.py

ACCOUNT_SIGNUP_FORM_CLASS = 'managers.signup.ManagerProfileSignupForm'
SOCIALACCOUNT_AUTO_SIGNUP = False
SOCIALACCOUNT_ADAPTER = 'managers.adapter.ManagerSocialAccountAdapter'
ACCOUNT_ADAPTER = 'managers.adapter.ManagerAccountAdapter'


adapters.py

class ManagerSocialAccountAdapter(DefaultSocialAccountAdapter):
def get_connect_redirect_url(self, request, socialaccount):
return reverse('company_details', args=(request.user.managerprofile.company.pk,))

class ManagerAccountAdapter(DefaultAccountAdapter):
def get_login_redirect_url(self, request):
return reverse('company_details', args=(request.user.managerprofile.company.pk,))

最佳答案

在您的应用程序的 settings.py 中设置 LOGIN_REDIRECT_URL:

我有这个值,重定向到主页:

LOGIN_REDIRECT_URL = '/'

关于django-allauth 适配器重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23262161/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com