URLconf
- 在settings.py文件中通过ROOT_URLCONF指定根级url的配置
- urlpatterns是一个url()实例的列表
- 一个url()对象包括:
1 正则表达式
2 视图函数
3 名称name - 编写URLconf的注意:
1 若要从url中捕获一个值,需要在它周围设置一对圆括号
2 不需要添加一个前导的反斜杠,如应该写作'test/',而不应该写作'/test/'
3 每个正则表达式前面的r表示字符串不转义 - 请求的url被看做是一个普通的python字符串,进行匹配时不包括get或post请求的参数及域名
包含其它的URLconfs
在urls.py
中,可以包含其他 URLconf
from django.conf.urls import include, url
from django.contrib import admin
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^user/', include('user_app.urls', namespace='user'))
]
在user_app
下新建一个urls.py
from django.conf.urls import include, url
from . import views
urlpatterns = [
url(r'^register$', views.regiseter, name='register')
]
- 匹配过程:先与主URLconf匹配,成功后再用剩余的部分与应用中的URLconf匹配
- 在include中通过namespace定义命名空间,用于反解析