Представление orders.views.place_order не возвращало объект HttpResponse. Вместо этого оно вернуло None

Я новичок в django и получил эту ошибку. Не мог бы кто-нибудь помочь мне разобраться

Вот мой код views.py

def place_order(request, total=0, quantity=0,):
current_user = request.user



if request.method == 'POST':
    form = OrderForm(request.POST)
    if 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.save()
        return redirect('checkout)
else:
    return redirect('checkout')

Я думаю, что ваша форма не действительна в этом случае. Но она все еще находится в первом блоке if. Но не введена во второй блок if. Таким образом, для этого нет блока else или return to. Попробуйте правильно задать возврат, возможно, это решит проблему. Но все же проверьте вашу форму. Она не действительна.

if request.method == 'POST':
    form = OrderForm(request.POST)
    if 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.save()
    return redirect('checkout)
else:
    return redirect('checkout') 

       

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