首页 > 编程语言 >python之路47 django路由配置

python之路47 django路由配置

时间:2022-12-12 21:45:39浏览次数:49  
标签:index 匹配 views python 47 django path 数据 路由

可视化界面之数据增删改查

针对数据对象主键字段的获取可以使用更加方便的obj.pk获取
在模型类中定义双下str方法可以在数据对象被执行打印操作的时候方便的查看
'''
form表单中能够触发提交动作的按钮只有两个
<input type="submit"/>
<button></button>
'''
1.数据展示功能
    开设接口、获取数据、传递页面、展示数据
2.数据添加功能
    开设接口、获取数据、发送数据、校验数据、录入数据、重定向
3.数据编辑功能
    开设接口、后端如何区分所要编辑的数据(问号携带参数)、后端获取用户数据、前端展示默认数据、获取用户数据并完成更新
4.数据删除功能
     开设接口、问号携带参数、删除二次确认

django请求生命周期流程图

这个图重点记忆   无聊是学习阶段还是复习阶段

学习流程
    路由层、视图层、模板层、模型层、组件、BBS项目

image

django路由层

1.路由匹配
     django2.X及以上 path第一个参数写什么就匹配什么
     django1.X第一个参数是正则表达式
     无论什么版本django都自带加斜杠后缀的功能 也可以取消
     配置文件中  APPEND_SLASH = False
2.转换器
     正常情况下很多网站都会有很多相似的网址 如果我们每一个都单独开设路由不合理
     django2.X及以上版本路由动态匹配有转换器(五种)
         str: 匹配除路径分隔符外的任何非空字符串
         int:匹配0或者任意正整数
         slug:匹配任意一个由字母或数字组成的字符串
         uuid:匹配格式化后的UUID
         path:能够匹配完整的URL路径
ps:还支持自定义转换器(自己写正则表达式匹配更加细化的内容)
    # 转换器 将对应位置匹配到的数据转换成固定的数据类型
    path('index/<str:info>',views.index_func),# index_func(实参request对象,info='转换器匹配到的类型转换之后的内容')
    path('index/<str:info>/<int:id>/', views.index_func)  # index_func(实参request对象,info='转换器匹配到的类型转换之后的内容',id='转换器匹配到的类型转换之后的内容')
3.正则匹配
     django2.X及以上版本由re_path 第一个参数是正则
     匹配的本质是只要第一个正则表达式能够从用户输入的路由中匹配到数据就算匹配成功会立刻停止路由层其他的匹配直接执行对应的视图函数
     re_path('^test/$', views.test)
     django1.X路由匹配使用的是url() 功能与django2.X及以上的re_path()一致

4.正则匹配的无名有名分组
      无名分组
          re_path('^test/(\d{4}))/',views.test)
          会将括号内正则匹配到的内容当做位置参数传递给视图函数
      有名分组
          re_path('^test/(?p<year>\d{4})/',views.test)
          会将括号内正则匹配到的内容当做关键字参数传递给视图函数
   上述分组不能混合使用!!!!

反向解析

通过一个名字可以反向解析出一个结果 该结果可以访问到某个对应的路由

基本使用
    1.路由匹配关系起别名
       path('login001/', views.login, name='login_view')
    2.反向解析语法
        html页面上模板语法{% url 'login_view'%}
        后端语法          reverse('login_view')
动态路由的反向解析
           	path('func1/<str:others>/',views.func1_func,name='func1_view')
     html页面上模板语法{% url 'func1_view' 'jason'%}
     后端语法      reverse('func1_view',args=('嘿嘿嘿',) )

标签:index,匹配,views,python,47,django,path,数据,路由
From: https://www.cnblogs.com/xm15/p/16977157.html

相关文章

  • django之路由层
    django之路由层路由层,主要是路由地址与视图函数的映射关系,如果将网站比作一本书,那么路由就相当于这本书的目录。路由匹配在目前的主流版本2.x及以上版本中,我们默认......
  • 进入python的世界_day50_Django之路由层——路由匹配、反向解析
    一、django请求生命周期流程图学习流程:​ 路由层、视图层、模板层、模型层、组件(插件、中间件)、BBS项目二、路由匹配1.path转换器#path('网址后缀',视图函数名)一旦......
  • django路由层
    django请求生命周期流程图django路由层1.路由匹配django1.X版本路由的第一个参数是正则表达式django2.X及以上版本的则是path写什么就匹配什么#无论什......
  • django 可视化界面
    可视化界面之数据增删改查针对数据对象主键字段的获取可以使用更加方便的obj.pk获取在模型类中定义双下str方法可以在数据对象被执行打印操作的时候方便的查看'''for......
  • Python Web开发一:Web开发简介
    PythonWeb开发一:Web开发简介​​一、背景知识​​​​二、前端开发和后端开发要做什么​​​​1.Web前端开发​​​​1.1html文件​​​​1.2CSS​​​​1.3资源文件​​......
  • 1行Python代码,合并100个Excel文件,原来这么方便?
    大家好,这里是程序员晚枫。今天开源项目​​python-office​​发布了一个新功能:1行代码,合并你指定的多个Excel文件。本文给大家详细介绍一下~需求说明有一位老师,现在有全校1......
  • 总结Python设置Excel单元格样式的一切,比官方文档还详细
    OverridetheentrypointofanimageIntroducedinGitLabandGitLabRunner9.4.Readmoreaboutthe extendedconfigurationoptions.Beforeexplainingtheav......
  • Django框架3
    今日内容概要django请求生命周期流程图django路由层反向解析今日内容详细django请求生命周期流程图学习流程 路由层、视图层、模板层、模型层、组件、BBS项目d......
  • django-路由层详解
    django-路由层详解可视化界面之数据增删改查针对数据对象主键字段的获取可以使用更加方便的obj.pk获取在模型类中定义双下str方法可以在数据对象被执行打印操作的时候......
  • Django框架:路由层
    目录Django中的路由层一、可视化界面之增删改查1.数据展示2.数据的添加功能3.数据的编辑功能4.数据的删除功能二、Django请求生命周期流程图1.web服务网关接口2.整个Django......