Django之路由系统
1:一一对应的路由:
一个url对应一个函数
/login/ ---> def login(request)
2:动态路由:
/login/(\d+)/ ----> def login(request,a)
正则表达式 ------------- 参数a是用来接收正则的
/login/(?p<a1>\w+)/ -----> def login(request,a1)
(?p<a1>\w+) 的好处是不用位置传参
3:终止符 ‘^ $‘:
‘^login$‘
4:伪静态(html):html就是伪静态
^login/(?p<a1>\w+).html$
5:路由分发:
在项目名的urls中用include方法,将路由分放,使每个文件件的路由关系独立。
from django.conf.urls import url,include
urlpatterns = [
url(r‘^admin/‘, admin.site.urls),
url(r‘^api/‘, include(‘api.urls‘)),
]
这样,api文件夹下的url就可以独立了
api中的url就要加上api的路径。
在api中的urls.py中
from django.conf.urls import url from api import views urlpatterns = [ url(r‘^asset.html$‘,views.asset), ]
在api的views中加asset
def asset(request): return HttpResponse("ok")
也可在项目名中的url中,定义错误页面
def default(request): return HttpResponse("404 Not Found")
在项目名的url中设置默认页面:
url(r‘^ ‘, views.index)
这样就默认页面是index函数的相关数据了。
6:路由别名反向生成URL(给URL的关系命名)