我已經定義爲路由如下不太具體: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