Я пытаюсь войти в систему пользователя в Django. Если я использую код ниже, все работает нормально
def login(request):
return render(request, 'web/login.html')
def home(request):
if request.method == 'POST':
if Member.objects.filter(username=request.POST['username'], password=request.POST['password']).exists():
member = Member.objects.get(username=request.POST['username'], password=request.POST['password'])
return render(request, 'web/home.html', {'member': member})
else:
context = {'msg': 'Invalid username or password'}
return render(request, 'web/login.html', context)
Здесь я пытаюсь выполнить тот же вход в систему, обрабатывая данные с использованием clean_data , но выдает ошибку:
Представление webApp.views.home не возвращало объект HttpResponse. Вместо этого он вернул None.
Означает ли это, что данные моей формы пусты или не опубликованы?
У меня есть эталонное решение, найденное здесь , но безуспешно.
Вот код:
def login(request):
return render(request, 'web/login.html')
def home(request):
if request.method == 'POST':
form = loginForm(request.POST)
# check whether it's valid:
if form.is_valid():
# process the data in form.cleaned_data as required
username = form.cleaned_data['username']
password = form.cleaned_data['password']
#if len(username) < 5 || len(password) < 5:
if Member.objects.filter(username=username, password=password).exists():
member = Member.objects.get(username=username, password=password)
return render(request, 'web/home.html', {'member': member})
print("success")
else:
context = {'msg': 'Invalid username or password'}
return render(request, 'web/login.html', context)
print('failed')