创建购物车应用程序时Django中出现NoReverseMatch错误

2024-04-20 05:06:50 发布

您现在位置:Python中文网/ 问答频道 /正文

获取错误NoReverseMatch

Reverse for 'add_to_cart' with arguments '('',)' and keyword arguments '{}' not found. 1 pattern(s) tried: ['cart/(?P<slug>[\\w-]+)/']

在网址.py在

^{pr2}$

在视图.py在

^{3}$

在产品.html在

<form class='form' method='POST' action='{% url "add_to_cart" product.slug %}'> {% csrf_token %}
             <input class='btn btn-default btn-block' type='submit' value='Add to cart'/>
            <input  class="form-control"  name='qty' type='number' value='1'/>

            {% if product.variation_set.all %}


            {% if product.variation_set.sizes %}
            <select class='form-control' name='size'>
            {% for item in product.variation_set.sizes %}
                <option value='{{ item.title|lower }}'>{{ item.title|capfirst }}</option>
                {% endfor %}
            </select>
            {% endif %}

             {% if product.variation_set.colors %}
            <select class='form-control' name='color'>
            {% for item in product.variation_set.colors %}
                <option value='{{ item.title|lower }}'>{{ item.title|capfirst }}</option>
                {% endfor %}
            </select>
            {% endif %}



            {% endif %}

         </form>

我想我错过了什么。即使我提到其他url名称,它也会显示与该url模式相同的错误。我需要导入一些可以解决它的东西吗。在


Tags: toformurlfortitlevalueproductitem
2条回答

您没有首先显示负责呈现prod.html的视图。但从错误中可以清楚地看到,作为product传递给该模板的对象的slug属性有一个空字符串。在

从我看到的你没有提供,一个必需的参数是slug,'cart'应该是一个字符串。https://docs.djangoproject.com/en/1.8/ref/urlresolvers/

url = reverse('cart', args=(slug,))
return HttpResponseRedirect(url)

相关问题 更多 >