django2获取url所有路径

Posted weilaibuxiangshuo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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=[]))

 

以上是关于django2获取url所有路径的主要内容,如果未能解决你的问题,请参考以下文章

django 2.2.5 URL 路径中的 URL 正则表达式

Django 2.2.3 如何获取所有 urls 模式和所有视图名称

Django 2 url路径匹配负值

AJAX 路由到 Django URL(使用 Django 2.0“路径”urlpatterns)

django2.0关于path匹配路径页面刷新不出来的问题

django2.2 版本static静态文件路径配置出错的问题解决方案。