Django如何处理一个URL对应的请求
- 假如浏览器请求该地址: http://127.0.0.1:8000/page/2021
1、Django 从配置文件settings.py中找主路由ROOT_URLCONF值,默认情况下,该文件在项目同名目录下的urls
2、Django 加载主路由文件urls.py中的 urlpatterns 变量
3、依次匹配 urlpatterns 中的 URL, 匹配到第一个合适的,就会中断后续匹配
4、匹配成功 - 调用对应的视图函数处理请求,返回响应
5、匹配失败 - 返回404响应
from django.urls import path
from django.contrib import admin
from . import views
urlpatterns = [
path('admin/', admin.site.urls),
path('page/2021', views.page_2021),
]
6、说一下Django中 path() 函数
- 导入模块:from django.urls import path
- path语法:path(route, views, name=None)
- path参数:
> route: 字符串类型,匹配的请求路径
> views: 指定路径所对应的视图处理函数的名称
> name: 为地址起别名,在模板中地址反向解析时使用。前后端分离用不到
7、Django中 path() 转换器,我直接上图了
image.png
视图函数 views
1、首页要在主目录下创建一个views.py文件
2、其次可以写 path('page/2021', views.page_2021)对应的视图函数
3、每个视图函数必要传一个形参request
4、request用于绑定HttpRequest对象,通过此对象可以获取浏览器的参数和数据
5、HttpResponse对象:Django会提供一系列的response对象。
6、写完下面的page_2021函数就可以访问页面顶端链接了
from django.http import HttpResponse
def page_2021(request):
return HttpResponse("get is 哈哈")