Как сделать уменьшение товара на складе после оформления заказа Python Django

Предоставляю код класа Product и функцию оформления заказа Order_create,пробував через id получаю ошибку DoesNotExist at order/ Product matching query does not exist models.py

class Product(models.Model):
    name = models.CharField(max_length=250, unique=True)
    slug = models.SlugField(max_length=250, unique=True)
    description = models.TextField(blank=True)
    category = models.ForeignKey(Category, on_delete=models.CASCADE)
    price = models.DecimalField(max_digits=10, decimal_places=2)
    image = models.ImageField(upload_to='product', blank=True)
    stock = models.IntegerField()
    available = models.BooleanField(default=True)
    created = models.DateTimeField(auto_now_add=True)
    updated = models.DateTimeField(auto_now=True)

    class Meta:
        ordering = ('name',)
        verbose_name = 'product'
        verbose_name_plural = 'products'

    def get_url(self):
        return reverse('product_detail', args=[self.category.slug, self.slug])

    def __str__(self):
        return self.name

views.py

def order_create(request):
    cart = Cart.objects.get(cart_id=_cart_id(request))
    cart_item = CartItem.objects.filter(cart=cart, active=True)

    if request.method == 'POST':
        form = OrderCreateForm(request.POST)
        if form.is_valid():
            order = form.save()
            for item in cart_item:
                OrderItem.objects.create(order=order, product=item.product, price=item.product.price,
                                         quantity=item.quantity)
                product = Product.objects.get(id=item.id)
                product.stock = product.stock - item.quantity
                product.save()

            cart_item.delete()

    else:
        form = OrderCreateForm()
    return render(request, 'checkout.html', {'cart_item': cart_item, 'form': form})


Ответы (0 шт):