我有一个成功注册用户的问题 - 但是,我希望用户在注册时登录。这是代表我的注册视图的代码。关于为什么用户没有自动登录的任何想法?
笔记:
- 用户已正确注册,他们可以在此之后登录
- 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)