Django反向使用Querydict kwargs

时间:2012-04-03 14:53:07

标签: django url reverse

我发现自己陷入困境,这让我求助。

我有一个可以获得多个kwargs的网址(全部名为id)。

url(r'^multi(id=(?P<id>\d+))*', GetView.as_view(), name='get'),

在GetView中,经过几次重定向后,我有:

q = QueryDict("id=%s" %"&id=".join(list))
self.refresh_url = reverse("get", kwargs=q)

refresh_url来到刷新标记的位置。

问题在于:

Reverse for 'get' with arguments '()' and keyword arguments '{u'id': [u'123', u'456']}' not found.

如果有人之前遇到过这种情况,那么请分享您的解决方案。

感谢。

1 个答案:

答案 0 :(得分:0)

您应该使用查询字符串1,而不是使用网址中的ID。

#Url
url(r'^multi/$', GetView.as_view(), name='get'),

#Reverse url
self.refresh_url = "%s?id=%s&id=%s" % (reverse("get"), id1, id2)

#Views
ids = request.GET.getlist('id')