1. 程式人生 > >django-url的分發

django-url的分發

路徑 log ros orf 表示 color 操作 site OS

1)url的分發:

1,首先在全局的url裏面的路徑中寫好,你要分發的路徑名.

2,並且在你要分發的路徑下,創好新的url文件.
在分發的路徑名裏面,把全局url裏面的代碼,復制過來

3,最後在瀏覽器打開的時候,命令前面要加上你分發路徑全部名稱.

例:原路徑
urlpatterns = [
url(r‘^admin/‘, admin.site.urls),
url(r‘^article/(\d{4}/\d{2}$)‘, views.article), #匹配括號裏面的
url(r‘^article/(?P<year>\d{4})/(?P<days>\d{2})$‘
, views.article), #匹配括號裏面的
url(r‘^app01/‘,include(‘app01.urls‘))
]

新路徑:
urlpatterns = [
url(r‘^admin/‘, admin.site.urls),
# url(r‘^article/(\d{4}/\d{2}$)‘, views.article), #匹配括號裏面的
# url(r‘^article/(?P<year>\d{4})/(?P<days>\d{2})$‘, views.article), #匹配括號裏面的
url(r‘^login/‘, views.login),
]

在裏面

2)起別名

1,在url裏面的,後面加上name屬性

2,然後在html頁面內,{% url 別名‘%}

例:
urlpatterns = [
    url(r^admin/, admin.site.urls),
    url(r^loginsdsd/‘, views.login,name=log),
]

在html裏面用別名代替前面的名稱

3)根目錄

顧名思義,就是不需要後面加上任何路徑就直接訪問urls後面路徑的數據.

根目錄用$,表示

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

最後一個url就是表示根目錄,在你用瀏覽器訪問頁面的時候,可以直接用
127.0.0.1:8000訪問,後面不需要加任何路徑.

4)rediect跳轉函數:

return render(request,login.html‘)和return rediect(/login.html/)之間的差別


return render(request,login.html)只是跳到login.html這個頁面上去,沒有別的任何操作,和url裏的調用都不執行,
並且路徑還是原來的路徑,
當用戶再次刷新時,會會重新回到原來路徑下的頁面.


return rediect(/login.html/)
執行的的是url裏面的函數,相當於又一次調用新的函數,/login.html/函數裏面的所有代碼都會執行,
並且路徑也會改變,
用戶再次刷新的時候不會改變

django-url的分發