0
Всякий раз, когда пользователь вводит пароль пустой (или имя пользователя) и логин, он показывает эту ошибку:views.log_in не возвращает объект HttpResponse
ValueError at/
The view views.log_in didn't return an HttpResponse object.
код:
def log_in(request):
if request.method == 'POST':
form = LoginForm(request.POST)
if form.is_valid():
user = form.cleaned_data['username']
pword = form.cleaned_data['password']
user = authenticate(username=user, password=pword)
if user is not None:
login(request, user)
if request.GET.get('next') is not None:
return HttpResponseRedirect(request.GET.get('next'))
else:
return HttpResponseRedirect('/home/')
else:
return render(request, 'login.html', { 'logform': form, 'error': True})
else:
if request.user.is_authenticated():
return HttpResponseRedirect('/home/')
else:
form = LoginForm()
return render(request, 'login.html', { 'logform': form, })
Как Я исправляю эту ошибку? Благодарю.
Я таким образом, он не показывает ошибку, если есть не вводится пароль или имя пользователя. Однако, если я ввожу неправильное имя пользователя и пароль, он показывает ошибку. – guy1234567
Вы проверяете ошибки формы или ищете значение '' error '= True', которое вы указываете в контексте, когда ваше имя пользователя/пароль не аутентифицируется? Вы также можете установить это значение, если форма недействительна, если вы смотрите на эту переменную, чтобы показать ошибку, или вы можете проверить свой шаблон 'form.is_bound, а не form.is_valid'. –
Я не могу найти пример шаблона check form.is_bound, а не form.is_valid. Направляй меня, пожалуйста? – guy1234567