国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

在Django框架中偽造捕捉到的URLconf值的方法

2020-01-04 18:02:19
字體:
供稿:網(wǎng)友

這篇文章主要介紹了在Django框架中偽造捕捉到的URLconf值的方法,Django是Python各色人氣框架中最為著名的一個,需要的朋友可以參考下
比如說你有匹配某個模式的一堆視圖,以及一個并不匹配這個模式但視圖邏輯是一樣的URL。 這種情況下,你可以通過向同一個視圖傳遞額外URLconf參數(shù)來偽造URL值的捕捉。
例如,你可能有一個顯示某一個特定日子的某些數(shù)據(jù)的應(yīng)用,URL類似這樣的:
 

  1. /mydata/jan/01/ 
  2. /mydata/jan/02/ 
  3. /mydata/jan/03/ 
  4. # ... 
  5. /mydata/dec/30/ 
  6. /mydata/dec/31/ 



這太簡單了,你可以在一個URLconf中捕捉這些值,像這樣(使用命名組的方法):
 

  1. urlpatterns = patterns(''
  2.   (r'^mydata/(?P<month>/w{3})/(?P<day>/d/d)/$', views.my_view), 



然后視圖函數(shù)的原型看起來會是:
 

  1. def my_view(request, month, day): 
  2.   # .... 



這種解決方案很直接,沒有用到什么你沒見過的技術(shù)。 當(dāng)你想添加另外一個使用 my_view 視圖但不包含month和/或者day的URL時,問題就出現(xiàn)了。
比如你可能會想增加這樣一個URL, /mydata/birthday/ , 這個URL等價于 /mydata/jan/06/ 。這時你可以這樣利用額外URLconf參數(shù):
 

  1. urlpatterns = patterns(''
  2.   (r'^mydata/birthday/$', views.my_view, {'month''jan''day''06'}), 
  3.   (r'^mydata/(?P<month>/w{3})/(?P<day>/d/d)/$', views.my_view), 



在這里最帥的地方莫過于你根本不用改變你的視圖函數(shù)。 視圖函數(shù)只會關(guān)心它 獲得 了 參數(shù),它不會去管這些參數(shù)到底是捕捉回來的還是被額外提供的。month和day

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 马山县| 罗平县| 晋宁县| 浦北县| 葵青区| 游戏| 常宁市| 惠东县| 裕民县| 六盘水市| 瓮安县| 东阳市| 崇左市| 若尔盖县| 文成县| 绥中县| 大连市| 临猗县| 定南县| 托克托县| 安溪县| 高邑县| 工布江达县| 含山县| 西安市| 项城市| 麻阳| 敖汉旗| 潜山县| 大连市| 西盟| 辽阳县| 奉化市| 昌都县| 晴隆县| 灯塔市| 庆元县| 长岛县| 永春县| 昭觉县| 栾川县|