Django ValueError: элемент последовательности обновления словаря #0 имеет длину 653; требуется 2

я отправляю запрос на бэкенд следующим образом

const createOrderButton = document.getElementById('createUserCart');

    createOrderButton.addEventListener('click', function () {
        const urlAddress = document.getElementById('cart-wrapper').getAttribute('action');
        console.log(JSON.stringify(cart));
        if (urlAddress === '/orders/') {
            let promise = fetch(urlAddress, {
                method: "POST",
                headers: {
                    'Content-Type': 'application/json',
                    "X-CSRFToken": CSRF_TOKEN
                },
                body: JSON.stringify(cart)
            });
            console.log(promise);
        }
    });

Объект корзины имеет вид. [{"product_id" : 1, "name" : "item1", "img_src" : "https://...", ...}, {}, ...]

my views.py

class CreateCart(View):
    template_name = "orders/index.html"

    def post(self, request):
        user_cart = json.loads(request.body.decode())

        random_id = uuid.uuid4()
        date_create = now()
        cart_objects_to_create = [
            Cart(
                user=User.objects.get(id=request.user.id),
                product=Product.objects.get(
                    id=int(el['product_id'])
                ),
                cart_id=random_id,
                date_create=date_create
            )
            for el in user_cart
        ]
        Cart.objects.bulk_create(cart_objects_to_create)
        return render(request, self.template_name)

Этот код вставляет объекты в sql таблицу, но не выводит шаблон и я вижу ошибку

Внутренняя

ошибка сервера: /orders/ Traceback (последний последний вызов): File "/Users/danya/CodeProject/djangoMarketPlace/venv/lib/python3.12/site-packages/django/core/handlers/exception.py", line 55, in inner response = get_response(request) ^^^^^^^^^^^^^^^^^^^^^ Файл "/Users/danya/CodeProject/djangoMarketPlace/venv/lib/python3.12/site-packages/django/core/handlers/base.py", строка 197, in _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "/Users/danya/CodeProject/djangoMarketPlace/venv/lib/python3.12/site-packages/django/views/generic/base.py", строка 104, in view return self.dispatch(request, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "/Users/danya/CodeProject/djangoMarketPlace/venv/lib/python3.12/site-packages/django/views/generic/base.py", строка 143, in dispatch return handler(request, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "/Users/danya/CodeProject/djangoMarketPlace/orders/views.py", строка 42, в post return render(request, self.template_name) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "/Users/danya/CodeProject/djangoMarketPlace/venv/lib/python3.12/site-packages/django/shortcuts.py", строка 25, в render content = loader.render_to_string(template_name, context, request, using=using) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "/Users/danya/CodeProject/djangoMarketPlace/venv/lib/python3.12/site-packages/django/te

length 653 - это длина списка, если отобразить его как строку

я пытаюсь получить данные следующим образом

createOrderButton.addEventListener('click', function () {
        const urlAddress = document.getElementById('cart-wrapper').getAttribute('action');
        console.log(JSON.stringify(cart));
        if (urlAddress === '/orders/') {
            let promise = fetch(urlAddress, {
                method: "POST",
                headers: {
                    'Content-Type': 'application/json',
                    "X-CSRFToken": CSRF_TOKEN
                },
                body: JSON.stringify({"cart": JSON.stringify(cart)})
            });
            console.log(promise);
        }
    });

но у меня также есть valueError и я пытаюсь изменить наследование от View на CreateView

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