정보 용 Django의 Reverse를 옵션 매개 변수와 함께 사용하려면 어떻게해야합니까?Django HTTPResponseRedirect & Reverse with optional parameter
이def cartForm(request, prod):
if request.method=="POST":
quantity = request.POST.get('quantity', False)
if quantity:
add_to_cart(request, prod, quantity)
return HttpResponseRedirect(reverse("cart"))
#if no quantity indicated, display error message
return HttpResponseRedirect(reverse('products.views.info', kwargs={'prod': prod, 'error':True}))
def info(request, prod, error=False):
prod = Product.objects.get(id=prod)
return render(request, "products/info.html", dict(product = prod, error=error))
urls.py :
url(r'^(?P<prod>\d+)/', "products.views.info", name='info'),
나는 다음과 같은 오류가 계속 : 나는
이 views.py 받고 계속
Reverse for 'products.views.info' with arguments '()' and keyword arguments '{'prod': u'2', 'error': True}' not found. 1 pattern(s) tried: ['products/(?P<prod>\\d+)/']
URL은 중복되지 않습니까? 일치 오류는'urls.py' 스 니펫이 보여주는 것과 다른 패턴을 보여줍니다. –
@BurhanKhalid : Django는 부분 URL 아래에 URL 패턴을 포함 할 수 있습니다. 이 패턴은''products/''에 포함됩니다. –
[Django 리다이렉트 (reverse)를 사용하여 질의 문자열에 의존하는 URL에 리다이렉트 가능] (http://stackoverflow.com/questions/4477090/django-redirect-using-reverse-to-a-url-that-relies) -on-query-strings) –