urls.py是url分发器,路由配置文件:在这里面我们会构建起网站的目录
( 简单来说我们要做的事就是告诉Django,对于某段url该调用哪段代码 )
配置url的方式:(列表,推荐方式)
urlpatterns = [
url ( 正则表达式,view函数,传递给视图的参数, 别名(命名空间),前缀 ),
url ( 正则表达式,view函数,传递给视图的参数, 别名(命名空间),前缀 ),
url ( r'^hello/$', v1.hello, {'a': 123}, name='hello' ),
]
1、创建一个项目:django-admin startproject DataHandel
2、创建一个APP:python manage.py startapp mydata ( settings.py -> INSTALLED_APPS元组下添加 'mydata', )
3、在APP的根目录下创建名叫Templates的目录 -> 在Templates目录下创建以APP为名称的目录 -> 存放所有的html页面
4、路由配置:
方法一:用户访问http://127.0.0.1:8000/index 然后后端使用index()函数处理
->DataHandel/urls.py内容如下:( 在urlpatterns里写入一条url与处理函数的映射关系 )
from django.conf.urls import url
from django.contrib import admin
from mydata import views
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^index/$', views.index),
]
->mydata/views.py内容如下:( 在app下的views.py里添加处理函数 )
from django.shortcuts import render
from django.http import HttpResponse
from . import models
def index(request):
# articles = models.Article.objects.all()
# return render(request, 'mydata/index.html', {'articles': articles})
return render(request, 'mydata/index.html', {'articles': '222'})
->在Templates下创建index.html页面
方法二:如果一个项目下有很多的app就要根据不同的app来分类不同的url(用户访问:http://127.0.0.1/app01/index/)
->DataHandel/urls.py内容如下:( 在urls.py里映射到APP下的url )
from django.conf.urls import include, url
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^mydata/', include('mydata.urls')),
]
->在mydata下创建一个urls.py文件内容如下:( 在APP里写入一条url与处理函数的映射关系 )
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^index/$', views.index),
# url(r'^article/(?P<article_id>[0-9]+)$', views.article_page),
]
->mydata/views.py内容如下:( 在app下的views.py里添加处理函数 )
from django.shortcuts import render
from django.http import HttpResponse
from . import models
def index(request):
# articles = models.Article.objects.all()
# return render(request, 'mydata/index.html', {'articles': articles})
return render(request, 'mydata/index.html', {'articles': '222'})
->在Templates下创建index.html页面
Django--urls.py路由配置详解
于 2018-06-19 16:10:07 首次发布