当前位置:网站首页>第四单元 路由层
第四单元 路由层
2022-08-02 14:01:00 【czy1206527605】
静态路由及动态路由
静态路由
概念:
静态路由用来映射对应视图函数,其中urlpatterns是路由文件中的一个全局变量,用来存放路由及视图函数的映射关系
作用:
用于固定地址的路由,一般作业中使用的路由都是静态路由
动态路由
作用:
较为复杂,当路由设置在改变的时候,就要用到动态路由。
path动态路由
path('index2/<int:id>/',views.IndexView2.as_view()),
class IndexView2(View):
def get(self,request,id):
return HttpResponse(f"匹配到的id为{id}")
re.path动态路由
PS:使用正则表达式来编写
re_path(r'^(?P<x>\d+)/(?P<y>[a-zA-Z]+)/$',views.IndexView3.as_view())
class IndexView3(View):
def get(self,request,x,y):
return HttpResponse(f"x为{x},y为{y}")
访问连接:**http://127.0.0.1:8000/abc/123/**以获取到x和y的值
路由分发
概念:一般路由是直接写到主项目的url里的。而在主项目创建多个自定义应用的时候则需要运用到路由分发include将路由分给到各个应用中。
运用:
from myapp import urls
urlpatterns = [
path('',include(urls))
]
PS:
需要在各个应用内创建urls.py文件来将url地址存放到里面。
路由分发的优点
1.路由分发为我们带来的好处有很多,可以让我们在多个app的项目中更加方便有效的管理每一个路由
2.可以让我们的用户在访问时看到浏览器中的URL地址更加赏心悦目
边栏推荐
猜你喜欢

IDEA打包jar包

mysql的case when如何用

You can't accept 60% slump, there is no eligible for gain of 6000% in 2021-05-27

栈 && 队列

C language improvement (3)

About the development forecast of the market outlook?2021-05-23

Object detection scene SSD-Mobilenetv1-FPN

Gstreamer Plugin注册流程详解

Sentinel源码(三)slot解析

stack && queue
随机推荐
Flask请求应用上下文源码分析
关于密码加密的一点思路
rust使用mysql插入数据
Gstreamer Plugin注册流程详解
The most complete ever!A collection of 47 common terms of "digital transformation", read it in seconds~
网络安全第二次作业
【学习笔记】数位dp
【Tensorflow】AttributeError: module ‘keras.backend‘ has no attribute ‘tf‘
网页设计(新手入门)[通俗易懂]
GTK:Gdk-CRITICAL **: IA__gdk_draw_pixbuf: assertion ‘GDK_IS_DRAWABLE (drawable)‘ failed
WiFi Association & Omnipeek Packet Capture Analysis
ftp常用命令详解_iftop命令详解
网络安全第五次作业
瑞吉外卖笔记——第10讲Swagger
Differences and concepts between software testing and hardware testing
Diodes and their applications
shell脚本“画画”
FFmpeg AVPacket详解
drf源码分析与全局捕获异常
Tornado框架路由系统介绍及(IOloop.current().start())启动源码分析