Django1.0與2.0區別


django1.0與django2.0之間的區別

虛擬環境

給不同的項目配置不同的python解釋器

1.0與2.0的區別

  1. django2.0里面的path第一個參數不支持正則,你寫什么就匹配什么,100%精准匹配

  2. django2.0里面的re_path對應django1.0中的url

  3. 雖然django2.0里面的path不支持正則表達式,但是它提供了5個默認的轉換器

    ​ str,匹配除了路徑分隔符(/)之外的非空字符串,這是默認的形式
    ​ int,匹配正整數,包含0。
    ​ slug,匹配字母、數字以及橫杠、下划線組成的字符串。
    ​ uuid,匹配格式化的uuid,如 075194d3-6885-417e-a8a8-6c931e272f00。
    ​ path,匹配任何非空字符串,包含了路徑分隔符(/)(不能用?)

  4. django2.0中可以自定義轉換器(分三步)

    1. 正則表達式
    2. 注冊
    from django.urls import register_converter
    class FourDigitYearConverter:
        regex = '[0-9]{4}'
        def to_python(self,value):
            return int(value)
        def to_url(self,value):
            return '%04d' % value # 占四位。不夠用0填滿,超了則按照超了的位數來
    register_converter(FourDigitYearConverter,'yyy')
    # PS:路由匹配到的數據默認都是字符串形式
    


免責聲明!

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



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