gpt4 book ai didi

python - 带可选参数的 Django HTTPResponseRedirect & Reverse

转载 作者:太空宇宙 更新时间:2023-11-03 13:45:41 26 4
gpt4 key购买 nike

如何将 Django 的 Reverse 与信息的可选参数一起使用?我不断得到

views.py:

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'),

我不断收到以下错误:

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+)/']

最佳答案

您可以将可选的 GET 参数传递为:

reverse('products.views.info', kwargs={'prod': prod})+'?error=true&some_other_var=abc'

reverse 将解析后的 URL 作为字符串返回,因此您可以连接任意数量的 GET 参数。

关于python - 带可选参数的 Django HTTPResponseRedirect & Reverse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21112775/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com