当前位置:网站首页>第四单元 路由层
第四单元 路由层
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地址更加赏心悦目
边栏推荐
猜你喜欢
Awesome!Alibaba interview reference guide (Songshan version) open source sharing, programmer interview must brush
保姆级教程:写出自己的移动应用和小程序(篇三)
How to solve 1045 cannot log in to mysql server
logback源码阅读(二)日志打印,自定义appender,encoder,pattern,converter
你接受不了60%的暴跌,就没有资格获得6000%的涨幅 2021-05-27
Sentinel源码(四)(滑动窗口流量统计)
stack && queue
智能指针-使用、避坑和实现
Raft协议图解,缺陷以及优化
mysql的case when如何用
随机推荐
WiFi Association & Omnipeek Packet Capture Analysis
Linux:CentOS 7 安装MySQL5.7
机器学习——交叉验证法
Mysql's case the when you how to use
Large and comprehensive pom file example
Raft对比ZAB协议
About the development forecast of the market outlook?2021-05-23
线代:已知一个特征向量快速求另外两个与之正交的特征向量
Shell脚本完成pxe装机配置
标量替换、栈上分配、同步消除
政策利空对行情没有长期影响,牛市仍将继续 2021-05-19
数据机构---第六章图---图的遍历---选择题
玉溪卷烟厂通过正确选择时序数据库 轻松应对超万亿行数据
You can't accept 60% slump, there is no eligible for gain of 6000% in 2021-05-27
redis分布式锁和看门狗的实现
面试官:可以谈谈乐观锁和悲观锁吗
rust使用mysql插入数据
replay视频播放器_怎么让手机音乐跟视频一起放
Raft协议图解,缺陷以及优化
大而全的pom文件示例