django2獲取url所有路徑


根據原文鏈接:https://segmentfault.com/a/1190000017378464,整理

第一步:先導入項目根的urls.py路徑

from ceshiproject import urls

第二步:引入 URLPattern,URLResolver

from django.urls.resolvers import URLPattern,URLResolver

第三步:使用遞歸的方式,把獲取所有路徑,例子如下:

def get_all_urls(patterns, pre_fix, result):
    for item in patterns:
        print(item.pattern)
        part = item.pattern.regex.pattern.strip("^$")
        print(part, 'part')
        if isinstance(item, URLPattern):
            result.append(pre_fix + part)
        else:
            get_all_urls(item.url_patterns, pre_fix + part, result=result)
    return result


print(get_all_urls(urls.urlpatterns, pre_fix="/", result=[]))

 


免責聲明!

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



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