Как рассчитать общую цену в django?

Я создаю сайт электронной коммерции и пытаюсь рассчитать общую стоимость товаров в файле views.py, но получаю ошибку.

Вот мой код:

@login_required(login_url='/customer/login')
@customer()
def addtocart(request):
    if request.user.is_authenticated:
        buyer = request.user.is_customer
        cart = Cart.objects.filter(buyer = buyer)

        amount = 0.00
        cart_products = [p for p in Cart.objects.all() if p.buyer == buyer]

        if cart_products:
            for p in cart_products:
                t_amount = (p.products.discounted_price)
                total_amount += t_amount
    return render(request, 'Shop/cart.html', {'cart': cart, 'total_amount': total_amount})

Вот что написано в браузере: локальная переменная 'total_amount' упоминается перед присвоением.
Спасибо

Ваша переменная сумма = 0.00 должна быть переименована в total_amount.

Когда у вас нет ни одного cart_products, python пытается прочитать переменную total_amount, но она находится вне области видимости. Определите ее в верхней части функции.

def addtocart(request):
    total_amount = 0.00
    if request.user.is_authenticated:
        ....
Вернуться на верх