Отсутствует 1 обязательный позиционный аргумент django _id

Я пытаюсь сделать корзину для сайта доставки. У меня куча проблем) вот одна из них:

методу remove() не хватает 1 аргумента:

Мое мнение:

def cart_remove(request, dish_id):
cart = Cart(request)
dish = get_object_or_404(Dish, id=dish_id)
cart_remove(dish)
return redirect('cart:cart_detail')

Мой шаблон:

{% for item in cart%}
    {% with dish=item.dish %}
        <tr>
            <td>
                <a href="{{ dish.get_absolute_url }}">
                    <img src="{{ dish.picture.url }}" width="100" height="100">
                </a>
            </td>
            <td>{{dish.name}}</td>
            <td>{{item.quantity}}</td>
            <td><a href="{% url 'cart:cart_remove' dish.id %}">Remove</a></td>
            <td class="num">$ {{item.price}} </td>
            <td class="num">$ {{item.total_price}} </td>
        </tr>
    {% endwith %}
{% endfor %}

мой метод itter в классе Cart:

def __iter__(self):
    dish_ids = self.cart.keys()
    dishes = Dish.objects.filter(id__in=dish_ids)
    for dish in dishes:
        self.cart[str(dish.id)]['dish'] = dish

    for item in self.cart.values():
        item['price'] = Decimal(item['price'])
        item['total_price'] = item['price'] * item['quantity']
        yield item

my urls.py:

urlpatterns = [
path('', cart_detail, name='cart_detail'),
path('add/<dish_id>/', cart_add, name='cart_add'),
path('remove/<dish_id>/', cart_remove, name='cart_remove'),

]

Моя маленькая ошибка

измените url на этот и попробуйте :

' int:dish_id ' в urls

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