Отсутствует 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