1
我有一個自定義用戶模型(MyUser)和一個註冊表單(UserCreationForm)。註冊用戶後,我希望它重定向到主頁。但是,它重定向到主頁,但問題是即使在註冊視圖中使用login()
函數後,user
也未登錄,因此它將被重定向回登錄頁面。成功註冊後以登錄用戶身份重定向到家庭
views.py:
@login_required(login_url='/account/login/')
def home(request):
return render(request, 'home.html')
def login_view(request):
form = LoginForm(request.POST or None)
if request.POST and form.is_valid():
user = form.login(request)
if user:
login(request, user)
return redirect("/")# Redirect to a success page.
return render(request, 'login.html', {'form': form })
def register(request):
if request.method == "POST":
form = UserCreationForm(request.POST)
if form.is_valid():
user = form.save()
login(request, user)
return redirect("/")
else:
form = UserCreationForm()
return render(request, 'register.html', {
'form': form
})
它給我的錯誤:
AttributeError at /account/register/
'MyUser' object has no attribute 'backend'
我在做什麼錯在這裏?請幫我解決這個問題。謝謝。
完美!謝謝。你能不能幫我理解爲什麼我必須重新登錄,而不僅僅是登錄(請求,用戶)'? –
看到這個,也許這個澄清你的問題,https://docs.djangoproject.com/en/1.8/topics/auth/default/#authenticating-users –
太棒了!非常感謝。 –