这篇文章运用简单易懂的例子给大家介绍Django框架的路由系统是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
路由层:(Django的路由系统)
URL配置(Django项目urls.py路由文件):
就像Django所支撑网站的目录,它的本质是URL与要为该URL调用的视图函数之间的映射表。
以这种方式告诉Django,对于这个URL调用这段代码,对于那个URL调用那段代码。
urls.py配置基本格式:
from django.conf.urls import url from django.contrib import admin from app01 import views urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^$', views.index), url(r'^index/', views.index, name='index'), ] url(正则表达式, views视图函数,参数,别名)
参数说明:
正则表达式:一个正则表达式字符串。
views视图函数:一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串。
参数:可选的要传递给视图函数的默认参数(字典形式)。
别名:一个可选的name参数。
正则表达式详解:
from django.conf.urls import url from . import views urlpatterns = [ url(r'^articles/2003/$', views.special_case_2003), url(r'^articles/([0-9]{4})/$', views.year_archive), url(r'^articles/([0-9]{4})/([0-9]{2})/$', views.month_archive), url(r'^articles/([0-9]{4})/([0-9]{2})/([0-9]+)/$', views.article_detail), ]
注意事项:
urlpatterns中的元素按照书写顺序从上往下逐一匹配正则表达式,一旦匹配成功则不再继续。
若要从URL中捕获一个值,只需要在它周围放置一对圆括号(分组匹配)。
不需要添加一个前导的反斜杠,因为每个URL 都有。例如,应该是^articles 而不是 ^/articles。
每个正则表达式前面的'r' 是可选的但是建议加上。
关于Django框架的路由系统是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。