首页 > 其他分享 >可视化界面之数据增删改查、django请求生命周期流程图、django路由层、反向解析

可视化界面之数据增删改查、django请求生命周期流程图、django路由层、反向解析

时间:2022-12-12 19:55:05浏览次数:54  
标签:匹配 流程图 views 改查 django path 数据 路由

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

针对数据对象主键字段的获取可以使用更加方便的 obj.pk获取
在模型类中定义双下str方法可以在数据对象被执行打印操作的时候方便的查看

'''
form表单中能够触发调剂动作的按钮只有两个
	<input type='submit'/>
	<button></button>
'''


1.数据展示功能
	开设接口、获取数据、传递页面、展示数据
2.数据添加功能
	开设接口、获取数据、发送数据、校验数据、录入数据、重定向
3.数据编辑功能
	开设接口、后端如何区分所要编辑的数据(问号携带参数)、后端获取用户数据、前端展示默认数据、获取用户并完成更新
4.数据删除功能
	开设接口、问号携带参数、删除二次确认

django请求生命周期流程图

学习流程
	路由器、视图层、模板层、模型层、组件、BBS项目
    
ps:这个图很重要。无论是学习阶段还是复习阶段

流程图

django路由层

1.路由匹配

django2.x及以上 path第一个参数写什么就匹配什么
django1.x第一个参数是正则表达式
无论什么版本django都自带自动加斜杠后缀的功能 也可以取消 在配置文件中添加语句
APPEND_SLASH = false

但是一般不建议添加除非个人需要

2.转换器

正常情况下很多网站都会有很多相似的网址 如果我们每一个都单独开设路由不合理

django2.x及以上版本路由动态匹配有转换器(五种)

str:匹配除路径分隔符外的任何非空字符串。
int:匹配0或者任意正整数
slug:匹配任意一个由字母或数字组成的字符串。
uuid:匹配格式化后的UUID.
path:能够匹配完整的url路径
    ps:还支持自定义转换器(自己写正则表达式匹配更加细化的内容)
path('indax/<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)^以x开头   $以x结尾
 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=('嘿嘿嘿',))

标签:匹配,流程图,views,改查,django,path,数据,路由
From: https://www.cnblogs.com/wwssadadbaba/p/16976964.html

相关文章

  • 常用到的数据库表增删改查操作
    工作中,常用到的几个关于表的操作,做个记录:1.表的查询查询数量:SELECTcount(*)FROM表名;查询多个字段内容:SELECT字段1,字段2,字段3FROM表名;查询多个字段下的......
  • django 03 django路由层
    django请求生命周期流程图  django路由层#1.路由匹配django1.x第一个参数是正则表达式django2.x+path第一个参数写什么就匹配什么......
  • ORM数据增删改查 django请求生命周期 django路由层 反向解析
    目录可视化界面之数据增删改查补充1.建表2.数据展示功能3.数据添加功能4.数据编辑功能5.数据删除功能django请求生命周期流程图crsfwsgirel与uwsginginxdjango路由层1.路......
  • django之路由层
    django请求生命周期流程图特别注意:WSGI是协议,而wsgiref与uwsgi是基于WSGI协议实现的功能django路由层1.路由匹配 django2.x及以上 path第一个参数写什么就匹配什么......
  • word流程图两条线的端点连接_word 2013流程图连线 word流程图连线
    【图形连线】怎样word里面连接2个框图,移动框图时连线不断?点击“开始”,“所有程序”,选择“OFFICE”中的“Visio2003”并打开。点击“文件”,“新建”,“流程图”,选择“基......
  • django-rest framework
    目录(1)Web应用模式及API接口(2)Restful规范(3)drf安装和简单使用(4)源码分析(5)序列化器-Serializer(6)局部和全局响应配置(7)视图(8)路由-Routers(9)认证-Authentication(10)权......
  • django之路由层和反向解析
    目录可视化界面之数据增删改查项目初始化步骤访问用户数据的接口数据添加django请求生命周期流程图django路由层反向解析可视化界面之数据增删改查项目初始化步骤1.创建......
  • 基于角色的权限控制(django内置的auth体系)
    #RBAC(Role-BasedAccessControl:基于角色的访问控制)#django的auth就是内置了一套RBAC的权限系统#django中 #后台权限控制(公司内部系统,crm客户关系管理,erp,协同平台)......
  • 基于Django中间件引发的编程思想
    基于Django中间件引发的编程思想(重点)importlib模块使用能够以字符串的形式导入模块,最小单位只能到模块名#1.创建一个py文件aaa.py#2.创建一个mypach文件夹,里面创......
  • Django自带的序列化组件
    Django自带的序列化组件(为drf做铺垫)(drf:djangorestframework)#在前端获取到,后端用户表里所有的数据,并且是列表套字典的格式#views.pyfromdjango.httpimport......