2013-03-04 65 views
0

我正在將系統的服務器端從PHP轉換爲Django,並且如果有可能具有取決於參數而不僅僅是URL的urlpatterns,我正在編程嗎?可能在URL模式中使用URL參數?

例子: 這兩個URL執行兩個完全不同的功能:

/trackme/requests.php?a=upload 

/trackme/requests.php?a=gettriplist 

正如我不能改變客戶端,我想有他們匹配兩個不同的模式。

目前我必須做一個大的if。我想它直接從URL調用正確的函數

感謝

+0

[在捕獲request.GET中的URL參數]的可能重複(http://stackoverflow.com/questions/150505/capturing-url-parameters-in-request-get) – 2013-03-04 12:16:37

+0

不是重複,(ⅰ認爲)因爲重點不同,所以在另一個問題中問的問題是如何獲取參數。我想直接在urlpatterns中抓取它們。 – tcarlander 2013-03-09 17:58:59

回答

1

你不能,我害怕。查詢字符串在urlconf中的任何正則表達式匹配之前從URL中剝離。我認爲你將不得不在處理視圖中的字符串。

if 'a' in request.GET: 
    if request.GET['a'] == 'upload': 
     #... 
    elif request.GET['a'] == 'gettriplist': 
     #... 
+0

感謝您的確認,我希望它有可能,但並不這麼認爲。 我會在ModRewrite中做到這一點,以獲得更乾淨的代碼。 – tcarlander 2013-03-09 17:54:53