Как исправить функциональность добавления в корзину в django?

Я создаю платформу электронной коммерции и хочу создать функциональность добавления в корзину на сайте. Но по какой-то причине Id продукта отображается как null. Вот коды: models.py

class Products(models.Model):
    seller = models.ForeignKey(SellerProfile, on_delete = models.CASCADE)
    title = models.CharField(max_length = 255)
    product_category = models.CharField(choices = CATEGORY_CHOICES, max_length = 100)
    description = models.TextField()
    price = models.FloatField(max_length= 5)

class Cart(models.Model):
    buyer = models.ForeignKey(User, on_delete = models.CASCADE)
    products = models.ForeignKey(Products, on_delete = models.CASCADE)

views.py

def add_cart(request):
    product_id = Products.id
    new_product = Cart.objects.get_or_create(id=product_id, user=request.user)
    return redirect('/')

Когда я пытаюсь нажать на эту ссылку, она выдает мне эту ошибку: Поле 'id' ожидало число, но получило <django.db.models.query_utils.DeferredAttribute object at 0x000002468A4F8550>. Любое предложение будет очень полезно.
Спасибо

Полагая, что у вас уже есть экземпляр Products, в таком случае

Запросить напрямую, например:

new_product = Cart.objects.get_or_create(products=Products)

Если вы хотите сделать запрос по product_id, сделайте это следующим образом:

product_id = Products.pk
new_product = Cart.objects.get_or_create(products_id=product_id)

Кроме того: request.user содержит словарь, вы не можете передать его непосредственно в query. А поле user имеет имя покупателя, поэтому измените запрос следующим образом:

product_id = Products.pk
new_product = Cart.objects.get_or_create(products=Products, buyer_id=request.user['pk'])

Наконец, я исправил это.
view.py

def add_to_cart(request, slug):
    products = Products.objects.get(slug=slug)
    ncart = Cart.objects.create(user=request.user., products=products)
    ncart.save()
    return redirect('/')

шаблон

<div class="product-wrapper">
      <h1 style="font-size:24px">{{product.title}}</h1>
      <div class="product-price">
        <p style="text-decoration-line:line-through;">$ {{product.price}}</p>
<a href="{% url 'add-to-cart' product.slug %}">Add to cart<a>
          </div>

urls.py

path('cart/add/<slug:slug>', views.add_to_cart, name = 'add-to-cart')
Вернуться на верх