Python 将参数传递给URL,但不要';我不希望它显示在django的URL中

Python 将参数传递给URL,但不要';我不希望它显示在django的URL中,python,django,django-forms,django-views,Python,Django,Django Forms,Django Views,我想使用reverse向django URL传递额外的选项,但我不想在URL中显示这些参数 我尝试了下面提到的代码,但没有成功,抛出了异常 url.py urlpatterns = patterns('', url(r'^foo-direct/', 'myapp.views.someview', {'wo_id': 1}, name='foo-direct'), ) views.py return HttpResponseRedirect(reverse('foo-direct', k

我想使用reverse向django URL传递额外的选项,但我不想在URL中显示这些参数

我尝试了下面提到的代码,但没有成功,抛出了异常

url.py

urlpatterns = patterns('',
    url(r'^foo-direct/', 'myapp.views.someview', {'wo_id': 1}, name='foo-direct'),
)
views.py

return HttpResponseRedirect(reverse('foo-direct', kwargs={'wo_id':2}))
如果我做错了什么,请提出建议

更新


在浏览器(url)中不显示参数的情况下如何实现


我的视图函数接受多个参数,我想传递这些多个参数,因此我不想在URL中显示所有参数,只需从反向函数中删除kwargs参数即可-

return HttpResponseRedirect(reverse('foo-direct')
更新

除非您将
wo\u id
包含在URL中,否则您将无法将reverse与动态
wo\u id
一起使用。reverse函数查看url配置中的所有url。它查找一个url,其中包含
args
kwargs
、和
name
args
kwargs
name
相匹配的url,这些url已传递给
reverse
。当找到匹配项时,它返回相应的函数(视图)


我不知道你为什么不想在你的url中包含你的wo_id,所以很难提出建议,但是,如果你试图保持url的描述性,那么你可以考虑使用slug字段而不是id。

这没有任何意义。如果不通过URL,就无法将动态参数传递到视图。它如何到达那里?当用户实际访问该URL时,Django如何知道使用哪个参数?

这篇文章对您有帮助吗?您的视图代码不正确,您传递的变量不存在于您的url代码中您想传递一个id并在相同的额外选项中吗?或者只传递额外选项?我只想传递额外选项,我不想在浏览器的url中显示任何内容。我正在尝试做同样的事情。你知道吗?我的wo_id值将是动态的,我如何使用反向传递wo_id动态值/我如何在不在浏览器(url)中显示参数的情况下实现?我的视图函数接受多个参数,我想传递这些多个参数,因此我不想在url中显示所有参数。你真的不能,向视图函数传递动态变量的唯一方法是在url中。