您的位置:首页 > 编程语言 > Python开发

004 Django学习之urls(Python2.7)

2017-09-13 17:33 369 查看

1. 单一路由对应

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


2. 基于正则的路由

url(r'^index/(\d*)', views.index),
url(r'^manage/(?P<name>\w*)/(?P<id>\d*)', views.manage),


3. 添加额外的参数

url(r'^manage/(?P<name>\w*)', views.manage,{'id':333}),


4. 为路由映射设置名称

url(r'^home/', views.home, name='h1'),
url(r'^index/(\d*)', views.index, name='h2'),


设置名称之后的调用

1. 模板中的调用

{% url 'h2' 2012 %}


2. views视图函数中的调用

reverse('h2', args=(2012,))


5. 根据app对路由规则进行分类(APP下的urls)

url(r'^web/',include('web.urls')),


6. 命名空间

-------------项目路径下的urls-------------
from django.conf.urls import url,include

urlpatterns = [
url(r'^app01/', include('app01.urls', namespace='app01')),
]

-------------app01下的urls----------------
from django.conf.urls import url
from app01 import views

urlpatterns = [
url(r'^index/(?P<pk>\d+)/$', views.index, name='index')
]

------------------views-------------------
def index(request, pk):
return HttpResponse(pk)

------------------使用--------------------
# views中使用url
v = reverse('app01:detail', kwargs={'pk':11})

# 模板中的使用
{% url 'app01:detail' pk=12 %}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  django python