django:路由,模板,模型系统

一、路由系统

浏览器会自动给url后加一个“/”
django会自动给路由的正则表达式前面加一个“/”
django会给任何不带“/”结尾的url语句添加“/”(可设置)
短路路由规则:匹配到第一条就忽略后面所有!
所以路由顺序很重要!

1.普通路由

url(r'^index/',views.index),

2.正则路由

url(r'^page/\d+', views.page),

3.正则加括号

提供参数传递,按顺序接收,接收到的都是字符串

# urls.py
url(r'^page/(\d+)', views.page),

# views.py
def page(request, index): page = index return HttpResponse("page: 第%s页" % page)

4.正则加括号加指定参数名

提供指定参数传递,按参数名字进行接收,顺序可变,但参数名必须相同,接收到的都是字符串

urls.py

url(r'^page/(?P<page>\d+)/(?P<number>\d+)', views.page),

views.py

def page(request, page, number):
p = page
n = number
return HttpResponse("page: 第%s页 第%s条" %(p, n))

5.分级路由include

在app01中新建urls文件

from django.conf.urls import include
url(r'index/', include(app01.urls)),

猜你喜欢

转载自www.cnblogs.com/wuxunyan/p/9108587.html