搜索URL我有以下網址:
http://127.0.0.1:8000/databaseadd/q=DQ-TDOXRTA?recipe=&recipe=&recipe=&recipe=&recipe=
我想如果關鍵字的「祕方=」 url中找到相匹配。
我在Django url.py以下行,但它不工作:
url(r'recipe=', 'plots.views.add_recipe'),
Django的:關鍵字正則表達式
是「&」和「?」把它扔掉?
謝謝!
亞歷
搜索URL我有以下網址:
http://127.0.0.1:8000/databaseadd/q=DQ-TDOXRTA?recipe=&recipe=&recipe=&recipe=&recipe=
我想如果關鍵字的「祕方=」 url中找到相匹配。
我在Django url.py以下行,但它不工作:
url(r'recipe=', 'plots.views.add_recipe'),
Django的:關鍵字正則表達式
是「&」和「?」把它扔掉?
謝謝!
亞歷
部分不用於url調度過程,因爲它包含GET參數。否則,您將無法使用帶有參數的GET請求,例如r'^foo/&'
(末尾的和號表示字符串的末尾,如果沒有,則同時使用r'^foo/'
和r'^foo/bar/'
等模式會更困難)。
因此,對於您的網址,模式應該看起來像r'^databaseadd/q=DQ-TDOXRTA&'
,然後在add_recipe
視圖中,您需要檢查recipe
GET參數。
我想匹配,如果關鍵字 「配方=」 url中
你可以嘗試像發現:在?
後
import re;
re.match (r'.*recipe=.*', "http://127.0.0.1:8000/databaseadd/q=DQ-TDOXRTA?recipe=&recipe=&recipe=&recipe=&recipe=")
問題是q =後面是什麼變量。 「DQ-TDOXRTA」部分將會改變,並且不會保持一致。有沒有一種好方法來解決這個問題?當我在URL中同時獲得q =和recipe =時,我想加載一個新視圖。 –
然後這個模式將被作爲'q'參數傳遞給視圖。'''databaseadd/q =(?P
假設q包含大寫字母和破折號。否則,改變'[A-Z \ - ]'部分。 – Igonato