我正在創建一個應用程序,其中許多網址使用像/foo/bar/<object_id>/<object_name_slug>/
這樣的模式,就像許多應用程序(包括SO)一樣,這本身就是一個可以直接執行的模式。然而,我不想只是盲目地忽略slug字段的內容,並將應用程序打開爲愚蠢的東西,比如分發篡改URL的人(例如最近流行的http://www.independent.co.uk/life-style/food-and-drink/utter-PR-fiction-but-people-love-this-shit-so-fuck-it-lets-just-print-it-2269573.html)。驗證URL段落
我的計劃是驗證slug的問題,重定向到正確的URL,如果有人通過糟糕的slu reaches達到一個頁面(再次像SO)。這在視圖中實現將是微不足道的,但由於這將是許多視圖中使用的模式,所以我想將它分解成可重用的東西 - 可能是裝飾器或中間件。
這樣做的最好方法是什麼?裝飾器可以確定哪個url模式被特定的請求匹配,以便它可以在必要時生成反向?
感謝您的想法。
可能重複的[URL重寫,如何避免URL尷尬?](http://stackoverflow.com/questions/5730801/url-rewriting-how-to-avoid-url-embarrassment) – 2012-01-13 19:24:14
請參閱:http:///stackoverflow.com/questions/4787731/canonical-links-and-301-redirect-if-url-doesnt-match-slug – 2012-01-19 06:24:22