一、路由系統,URL
1. url(r'^index',views.index) #默認的 url(r'^home',views.Home.as_view()) # CBV 形式 也就是說 class
2.url(r'^detail-(\d+).html', views.detail), # 在views里 def home(request, nid, uid) 這兩個參數不能調換循序 #http://www.baidu.com/detail-2-8.html 2是nid 8是uid
3.url(r'^detail-(?P<nid>\d+)-(?P<uid>\d+).html', views.detail) #多個正則 在views里 def home(request, nid, uid) 這兩個參數可以沒有順序
PS :
url(r'^detail-(\d+).html', views.detail),
def detail(request, *args, **kwargs) 這種方式可以替換 def detail(request,nid,uid)
實戰:
a.
url(r'^detail-(\d+)-(\d+).html', views.detail),
def func(request, nid, uid):
def func(reuqest, *args):
def func(request, *args, **kwargs)
b.
url(r'^detail-(?P<nid>\d+)-(?P<uid>\d+).html', views.detail)
def func(request, nid, uid):
def func(request, **kwargs): #或者 *args **kwargs 這樣的話就有一個沒有值的
kwargs= {'nid':1, 'uid':3}