创建用户配置模式后,用户注册时使用allauth的Django

问题描述 投票:1回答:1

我有一个Django项目中存在具有OneToOne的用户模型用户配置。它使用Django的allauth登记。

我通过账户和社会的帐户接受报名。一旦签约,我希望用户被重定向到一个页面,为该用户创建帐户的用户配置。

我怎么能这样做?

我已阅读,有一个名为user_signed_up 1个信号,可以将它用于将用户重定向到某个页面?我想这下面的代码,但它不会重定向我我想要的页面。

@receiver(user_signed_up, dispatch_uid="some.unique.string.id.for.allauth.user_signed_up")
def do_stuff_after_sign_up(sender, **kwargs):
    request = kwargs['request']
    user = kwargs['user']
    return redirect ('/test/')

任何帮助将不胜感激。谢谢 :)

django user-profile django-allauth
1个回答
0
投票

我知道它的晚,但我希望未来的读者会发现它有用。 :)

您需要提高这样的ImmediateHttpResponse

from allauth.exceptions import ImmediateHttpResponse
from django.shortcuts import render

@receiver(user_signed_up, dispatch_uid="some.unique.string.id.for.allauth.user_signed_up") 
def do_stuff_after_sign_up(sender, **kwargs): 
    request = kwargs['request'] 
    user = kwargs['user'] 
    raise ImmediateHttpResponse(render(request, 'you_custom_profile.html', {'user': user}))
© www.soinside.com 2019 - 2024. All rights reserved.