gpt4 book ai didi

python - Django 用户注册后自动登录(1.4)

转载 作者:太空狗 更新时间:2023-10-30 00:56:44 27 4
gpt4 key购买 nike

我在成功注册用户时遇到问题 - 但是,我希望用户在注册时登录。这是代表我的注册 View 的代码。关于为什么用户没有自动登录有什么想法吗?

注意事项:

  • 用户正在正确注册,他们可以在此之后登录
  • authenticate(**kwargs) 返回正确的用户
  • 在 settings.py 中我有:

    AUTHENTICATION_BACKENDS = ('django.contrib.auth.backends.ModelBackend',) 

谢谢!

def register(request):
user_creation_form = UserCreationForm(request.POST or None)
if request.method == 'POST' and user_creation_form.is_valid():
u_name = user_creation_form.cleaned_data.get('username')
u_pass = user_creation_form.cleaned_data.get('password2')
user_creation_form.save()
print u_name # Prints correct username
print u_pass # Prints correct password
user = authenticate(username=u_name,
password=u_pass)
print 'User: ', user # Prints correct user
login(request, user) # Seems to do nothing
return HttpResponseRedirect('/book/') # User is not logged in on this page
c = RequestContext(request, {'form': user_creation_form})
return render_to_response('register.html', c)

最佳答案

啊!我想到了。如果有人遇到此问题,请从 django.contrib.auth 导入登录名(如果您手动调用它)——我正在导入 View 。注释掉的代码代表我的情况的错误导入。

# from django.contrib.auth.views import login
from django.contrib.auth import authenticate, logout, login

关于python - Django 用户注册后自动登录(1.4),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15192808/

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