def post(self, request):
form = self.form_class(data=request.POST)
# NOTE: authenticate is already called internally in form.clean
if form.is_valid():
username_or_email = request.POST['username']
password = request.POST['password']
# NOTE: authenticate is already called internally in form.clean so there is no need to verify the result
user = authenticate(username=username_or_email, password=password)
login(request, user)
request.session[translation.LANGUAGE_SESSION_KEY] = user.language
redirect_to = request.POST.get('next', request.GET.get('next', reverse('landing_page:home')))
redirect_to = (redirect_to
if is_safe_url(redirect_to, request.get_host())
else reverse('landing_page:home'))
if redirect_to == "":
return HttpResponseRedirect(reverse("landing_page:home"))
else:
return HttpResponseRedirect(redirect_to)
return render(request, 'registration/login.html', {'form': form})
评论列表
文章目录