当前位置:网站首页>第四单元 路由层
第四单元 路由层
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地址更加赏心悦目
边栏推荐
- php开源的客服系统_在线客服源码php
- Flask框架
- GTK:Gdk-CRITICAL **: IA__gdk_draw_pixbuf: assertion ‘GDK_IS_DRAWABLE (drawable)’ failed
- Sentinel源码(六)ParamFlowSlot热点参数限流
- Audio processing: floating point data stream to PCM file
- web测试和app测试的区别?
- 智能指针-使用、避坑和实现
- Object detection scene SSD-Mobilenetv1-FPN
- Supervision strikes again, what about the market outlook?2021-05-22
- shell脚本“画画”
猜你喜欢
随机推荐
瑞吉外卖笔记——第05讲Redis入门
The world's largest Apache open source foundation is how it works?
智能指针-使用、避坑和实现
苏州大学:从 PostgreSQL 到 TDengine
xshell连接虚拟机步骤_建立主机与vm虚拟机的网络连接
音频处理:浮点型数据流转PCM文件
关于Google词向量模型(googlenews-vectors-negative300.bin)的导入问题
世界上最大的开源基金会 Apache 是如何运作的?
Go语言初始
Linux:CentOS 7 安装MySQL5.7
Minio文件上传
第二届中国Rust开发者大会(RustChinaConf 2021~2022)线上大会正式开启报名
Kunpeng devkit & boostkit
logback源码阅读(二)日志打印,自定义appender,encoder,pattern,converter
网络安全第五次作业
C语言提高篇(三)
Sentinel源码(三)slot解析
如何自定义feign方法级别的超时时间
【Tensorflow】AttributeError: '_TfDeviceCaptureOp' object has no attribute '_set_device_from_string'
机器学习——交叉验证法









