Решение представления не вернуло объект HttpResponse. Вместо этого он вернул None

Я получаю ошибку ниже

Метод запроса: POST URL запроса: http://127.0.0.1:8000/orders/place_order/. Версия Django: 3.1 Тип исключения: ValueError Значение исключения:
Представление orders.views.place_order не вернуло объект HttpResponse. Вместо этого оно вернуло None.

if request.method == 'POST':
    form = OrderForm(request.POST)
    if form.is_valid():
        print('we are here checking if the form is valid')
        data = Order()
        data.user = current_user
        data.first_name = form.cleaned_data['first_name']
        data.last_name = form.cleaned_data['last_name']
        data.phone = form.cleaned_data['phone']
        data.email = form.cleaned_data['email']
        data.address_line_1 = form.cleaned_data['address_line_1']
        data.address_line_2 = form.cleaned_data['address_line_2']
        data.country = form.cleaned_data['country']
        data.state = form.cleaned_data['state']
        data.city = form.cleaned_data['city']
        data.order_note = form.cleaned_data['order_note']
        data.order_total = grand_total
        data.tax =tax
        data.ip = request.META.get('REMOTE_ADDR')
        data.save()
        return redirect('checkout')
else:    
    return redirect('checkout')

Это фрагмент моего файла views.py

Ваше представление должно вернуть ответ, также если форма не действительна, вы можете поднять исключение:

if request.method == 'POST':
    form = OrderForm(request.POST)
    if form.is_valid():
        print('we are here checking if the form is valid')
        data = Order()
        data.user = current_user
        data.first_name = form.cleaned_data['first_name']
        data.last_name = form.cleaned_data['last_name']
        data.phone = form.cleaned_data['phone']
        data.email = form.cleaned_data['email']
        data.address_line_1 = form.cleaned_data['address_line_1']
        data.address_line_2 = form.cleaned_data['address_line_2']
        data.country = form.cleaned_data['country']
        data.state = form.cleaned_data['state']
        data.city = form.cleaned_data['city']
        data.order_note = form.cleaned_data['order_note']
        data.order_total = grand_total
        data.tax =tax
        data.ip = request.META.get('REMOTE_ADDR')
        data.save()
        return redirect('checkout')
    else:
        raise BadRequest() # Or do whatever makes sense to you
else:    
    return redirect('checkout')

Мне удалось решить проблему. По-видимому, если в коде HTML-формы есть ошибка/опечатка, она выдает ошибку "не вернул объект HttpResponse". С представлением все было в порядке.

Вернуться на верх