我已经定义为路由如下不太具体:Django的反向路由 - 溶液到外壳,其中反向路由比向前路由
(r'^edit/(\d+)/$', 'app.path.edit')
我想使用的反向功能如下:
url = reverse('app.path.edit', args=('-id-',))
生成的url被传递给一个js函数,客户端代码最终将用正确的数字id替换'-id-'。这当然不会起作用,因为'reverse'函数与路由不匹配,因为url被定义为包含数字参数。
我可以改变路线,以接受任何类型的参数如下,但后来我宽松一些特殊性:
(r'^edit/(.+)/$', 'app.path.edit'
我可以创建所显示的每个项目一个单独的网址,但我会展示列表中的很多项目,因此,为每个项目包含完整的url似乎浪费了带宽。
有没有更好的策略来完成我想要做的事情?
但/ 0 /也可能是一个有效的ID,所以不清楚/ 0 /是一个占位符还是一个ID。 – limscoder 2010-10-10 15:54:41
是的,在我的情况下可以使用它,因为ID是数据库的自动增量主键。 – 2010-10-11 17:07:24