Я создаю alogin-представление, в котором, когда пользователь не является ни одним, затем вошел в систему, он должен перейти на ту же страницу перед входом в систему, а затем перейти на другой URL-адрес, но он всегда переходит на другой URL-адрес, хотя он должен идти в первую очередь перенаправления
views.py
def login_page(request):
form = LoginForm(request.POST or None)
context = {
"form": form
}
next_get_url= request.GET.get('next')
next_post_url= request.POST.get('next')
redirect_path = next_get_url or next_post_url or None
if form.is_valid():
print(form.cleaned_data)
username = form.cleaned_data.get("username")
password = form.cleaned_data.get("password")
user = authenticate(request, username=username, password=password)
print(user)
if user is not None:
login(request, user)
if is_safe_url(redirect_path, request.get_host()):
return(redirect(redirect_path))
else:
return (redirect('/'))
else:
print ("Error")
return render(request, "accounts/login.html",context)
forms.py:
class LoginForm(forms.Form):
username = forms.CharField()
password = forms.CharField(widget=forms.PasswordInput)
Я имею в виду, что это всегда так:
else:
return (redirect('/'))
всякий раз, когда это так:
if is_safe_url(redirect_path, request.get_host()):
return(redirect(redirect_path))
все попытки и найденные решения не помогли! и заранее спасибо