django中url的參數用法筆記


url傳遞參數:

url映射:

  1. 為什么會去urls.py文件中尋找映射呢?
    是因為在settings.py文件中配置了ROOT_URLCONFurls.py。所有django會去urls.py中尋找。
  2. urls.py中我們所有的映射,都應該放在urlpatterns這個變量中。
  3. 所有的映射不是隨便寫的,而是使用path函數或者是re_path函數進行包裝的。

url傳參數:

  1. 采用在url中使用變量的方式:在path的第一個參數中,使用<參數名>的方式可以傳遞參數。然后在視圖函數中也要寫一個參數,視圖函數中的參數必須和url中的參數名稱保持一致,不然就找不到這個參數。另外,url中可以傳遞多個參數。
  2. 采用查詢字符串的方式:在url中,不需要單獨的匹配查詢字符串的部分。只需要在視圖函數中使用request.GET.get('參數名稱')的方式來獲取。示例代碼如下:
    def author_detail(request):
        author_id = request.GET['id']
        text = '作者的id是:%s' % author_id
        return HttpResponse(text)
    
    因為查詢字符串使用的是GET請求,所以我們通過request.GET來獲取參數。並且因為GET是一個類似於字典的數據類型,所有獲取值跟字典的方式都是一樣的。

url參數的轉換器:

  1. str:除了斜杠/以外所有的字符都是可以的。
  2. int:只有是一個或者多個的阿拉伯數字。
  3. path:所有的字符都是滿足的。
  4. uuid:只有滿足uuid.uuid4()這個函數返回的字符串的格式。
  5. slug:英文中的橫桿或者英文字符或者阿拉伯數字或者下划線才滿足。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM