Django сессии для анонимных пользователей при создании заказов

У меня есть views для добавления заказа для user, он работает, и это нормально.

Но мне нужно то же самое, но только для анонимного пользователя, через session. Я не работал с сессиями, читаю документацию, пробую, но не получается.

Пожалуйста, напишите мне, используя мой пример в теме else, как я могу создать Order в session для неавторизованных пользователей?

def add_to_cart(request, pk):

item = get_object_or_404(Item, pk=pk)
if request.user.is_authenticated:
    if order = Order.objects.filter(user=request.user).first():
        if order.products.filter(pk=product.pk).exists():
    if order_qs.exists():
        order = order_qs[0]
        if order.items.filter(item__slug=item.slug).exists():
            order_item.quantity += 1
            order_item.save()
            messages.info(request, "This item quantity was updated.")
            return redirect("core:order-summary")
        else:
            order.items.add(order_item)
            messages.info(request, "This item was added to your cart.")
            return redirect("core:order-summary")
    else:
        order = Order.objects.create(user=request.user)
        order.items.add(order_item)
        messages.info(request, "This item was added to your cart.")
        return redirect("core:order-summary")
else:
    ??? # for Anonymous user in session # ???

Любая информация, советы, ссылки на похожие ситуации - я буду очень благодарен за любую помощь.

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