首页 > 代码库 > Python菜鸟之路:Django 路由、模板、ORM

Python菜鸟之路:Django 路由、模板、ORM

Django路由系统

  Django的路由系统让Django可以根据URI进行匹配,进而发送至特定的函数去处理用户请求。有点类似nginx的location功能。

  Django的路由关系分为三种:普通关系、动态关系、分组分发。这三种关系都记录在urls.py中。

路由-普通关系

  普通关系表示一个url对应一个函数,例如:

urlpatterns = [    url(r‘^admin/‘, admin.site.urls),    url(r‘^login/‘, views.login),    url(r‘^detail/‘, views.detail),]

路由-动态关系

  动态关系表示通过正则的方式去实现动态匹配。例如:

urlpatterns = [    url(r‘^detail/(\d+)/‘, views.detail),  # 动态路由之:单参数的路由    url(r‘^detail2/(\d+)/‘, views.detail2),  # 动态路由之:多参数的路由    url(r‘^detail3/(?P<p1>\d+)/(?P<x2>\d+)/‘, views.detail3), # 动态路由之:命名参数,两个参数分别被命名为p1和x2    url(r‘^index/(\d+)/‘, views.index),  # 分页显示]

  动态路由其实通过映射也可以实现

 

路由-分组分发

 

Python菜鸟之路:Django 路由、模板、ORM