- 博客(44)
- 收藏
- 关注
原创 用户的登陆认证、DjangoRestFramework JWT&多条件登录,导航栏实现
用户的登陆认证、DjangoRestFramework JWT&多条件登录,导航栏实现
2022-10-06 16:57:26 1359 2
原创 DRF视图类、认证组件、权限、限流、过滤、排序、分页、异常处理、自动生成接口文档、Xadmin
DRF视图类、认证组件、权限、限流、过滤、排序、分页、异常处理、自动生成接口文档、Xadmin
2022-09-15 11:41:04 397
原创 Django --- API接口规范 Rest Framework DRF序列化与反序列化
Django --- API接口规范 Rest Framework DRF序列化与反序列化
2022-09-11 22:06:33 548
原创 django:csrf_token和文件上传、中间件
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录Crsf介绍django实现csrf_token认证form表单实现csrf_token认证ajax实现csrf_token认证关于csrf的一些理解csrf_token校验django实现文件上传form表单实现文件上传ajax实现文件上传文件上传的views.py(form表单和ajax都用这套视图函数)中间件:Middleware中间件概念django请求的生命周期中间件可以定义的5个方法自定义中间件的流程关于中间件的方法的执
2021-08-21 22:12:02 256
原创 Django:ORM单表操作和多表操作、锁和事务
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录ORM简介ORM中的对象关系映射ORM的实际使用执行数据库同步指令,在项目根目录下面执行查看FIeld和mysql中的字段关系对比django配置连接msyqlORM简介MVC或者MVC框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库,这极大的减轻了开发人员的工作量,不需要面对因数据库变更而导致的无效劳动ORM是“对象-关系-映
2021-08-20 21:11:21 295
原创 URL别名和反向解析、路由分发和URL命名空间
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录URL别名和反向解析路由分发和URL命名空间URL别名和反向解析urls.pyfrom django.conf.urls import urlfrom django.contrib import adminfrom app01 import viewsfrom app01 import views'''给URL起别名,在URL后面加name参数'''urlpatterns = [ url(r'^admin
2021-08-20 18:23:59 293
原创 Django:URL有名和无名分组、FBV和CBV、关于dispatch加装饰器的方式
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录URL有名和无名分组写URL时的注意点URL无名分组URL有名分组request.get_full_path()和request.path区别FBV和CBVFBVCBVdispatch在底层是如何实现的CBV的本质CBV相对于FBV的优点CBV对应的URL传参关于dispatch加装饰器的方式URL有名和无名分组写URL时的注意点1 url(r'^index/', views.index), 路径的前置导航斜杠(对应
2021-08-17 21:26:37 131
原创 Django:wsgrief、jinja2模板渲染、Django的MVC和MTV框架、创建启动一个Django项目
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录wsgrief(了解)自定义web框架wsgiref版wsgiref 基本原理登录函数逻辑application函数逻辑(替代socket)创建数据库并插入数据pymysql连接数据库对数据库进行操作auth登录验证登录页面-login.html登陆成功的跳转界面自定义web框架wsgiref版-优化版文件的结构图jinja2模板渲染用JinJa2实现动态界面Django的MVC和MVC框架MVC框架MTV框架django:下载安装
2021-08-17 15:36:00 138
原创 Django框架:HTTP协议和自定义web框架
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录HTTP协议HTTP协议简介HTTP协议概述HTTP工作原理HTTP协议定义了两件事HTTP协议采用了请求/响应模型以下是 HTTP 请求/响应的步骤例如:在浏览器地址栏键入URL,按下回车之后会经历以下流程HTTP请求方法HTTP状态码URLHTTP请求格式HTTP响应格式自定义web框架初版函数版线程版HTTP协议HTTP协议简介超文本传输协议(英文:HyperText Transfer Protocol,缩写:HTTP
2021-08-16 21:39:55 109
原创 Bootstrap
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录什么是Bootstrap?关于Bootstrap的一些常用网址什么是Bootstrap?Bootstrap是一个开源框架,是对html\css\js\jquery等的封装,用法,复制黏贴关于Bootstrap的一些常用网址网址: https://www.bootcss.com/font-awesome http://www.fontawesome.com.cn/iconfont: https://www.iconfon
2021-08-15 22:09:00 80
原创 JQuery
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录JQueryJQuery引入JQuery初识JQuery基础选择器id选择器类值选择器标签选择器组合选择器层级选择器属性选择器表单选择器筛选器方法parent() 找标签的父辈children() 找儿子辈的标签next() 找到下一个兄弟标签prev() 找到上一个兄弟标签siblings() 找到所有兄弟标签,不包含自己find() 找到后代中所有符合条件的标签first()和last() 和eq(索引值)class类值操作值操
2021-08-15 22:06:04 118
原创 json对象、字符串-数组和数学对象中的相关方法、BOM对象、JS中的DOM操作
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录json对象字符串对象的相关方法获取字符串长度 length清除两侧的空白 trim [ python的strip ]获取首次出现的位置 indexOf [ python的find ]最后一次出现的位置 lastIndexOf连接字符串 concat截取字符串 slice截取字符串 substr拆分字符串 split [ python的 split ]大小写 toUpperCase ---- toLowerCasesear
2021-08-15 17:28:55 148
原创 Javascript基础
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录Javascript基础概念JS的引入方式注释和变量数据类型概念Boolean 布尔类型Number 数字类型String 字符串类型Object 对象类型function 函数类型(归属于object)undefined 未定义类型强制转换parseInt 强制转换成整型parseFloat 强制转换成浮点型Number类型强转String 字符串强转Boollean 布尔类型强制转换自动类型转换自动类型转换Number Bool
2021-08-15 15:17:39 100
原创 CSS相关样式
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录CSS相关样式高度和宽度字体相关字体对齐颜色设置背景边框盒子模型display属性浮动如果想解决父级标签塌陷,有如下几种方法文字装饰相对定位绝对定位关于相对定位和绝对定位,你需要注意的点:固定定位CSS相关样式高度和宽度<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title
2021-08-14 23:10:56 134
原创 HTML标签和CSS引入方式和选择器
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录HTML 超文本标记语言文档结构head标签meta文档字符编码meta页面刷新meta关键字meta设置网站描述信息meta触屏播放link图标head内部标签总结body标签h1-h6标签br标签:换行hr标签:一行横线a标签:超链接标签img标签:图片标签div标签和span标签p标签:上下有边距ul标签和ol标签:列表标签dl标签(了解)table标签:表格标签(重点)colspan 横向合并 rowspan 纵向合并表格
2021-08-14 21:52:53 139
原创 python操作MySQL、pymysql模块、SQL注入攻击
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录python操作MySQL用python连接mysql的基本语法用python 创建&删除表用python操作事务处pymysql模块(增删改查)创建游标时,可以指定返回值类型为其他(默认是元组)pymysql 增pymysql 删pymysql 改pymysql 查fetchone 获取一条fetchmany 获取多条fetchall 获取所有自定义搜索查询的位置相对滚动 relative绝对滚动 absoluteSQL注
2021-08-14 11:42:05 482
原创 MySQL单表查询、多表查询、子查询
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录where条件的使用单表查询group 子句 分组分类聚合函数having 二次数据过滤order by 排序, 按照什么字段进行排序limit 限制查询条数 (数据分页)regexp (了解)可以使用正则表达式查询数据 (不推荐,效率不高)多表查询内连接 inner join外连接子查询概念创建两张表并插入数据distinct去重where条件的使用SQL查询语句的完整语法: select … from … where …
2021-08-13 22:19:57 283
原创 MySQL数据类型、约束、外键、索引、存储引擎
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录MySQL中数据类型整型浮点型字符串类型枚举和集合时间类型timestamp YYYYMMDDHHMMSS(时间戳)约束约束关键字unsigned 无符号not null 不为空default 设置默认值unique 唯一约束,数据唯一不重复primary key 主键,标记数据的唯一特征(唯一且不为空)auto_increment 自增加1(一般配合主键使用, 或 unique进行自增)zerofill 零填充(配合整型int
2021-08-13 16:51:04 86
原创 MySQL的基本操作
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录MySQL的基本操作登录mysql的语法查询用户/设置密码/去除密码给ip/网段/所有ip设置账号密码查看权限添加权限/删除权限/删除用户操作数据库:database操作表:table操作表中的数据(记录)MySQL中数据类型整型浮点型字符串类型枚举和集合MySQL的基本操作登录mysql的语法# (1) 登录mysql语法 默认root账户 是系统最高权限用户mysql -uroot -p 127.0.0.1 =&g
2021-08-12 22:19:41 65
原创 线程队列、进程池和线程池、回调函数、协程
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录线程队列线程队列的基本方法Queue:先进先出,后进后出LifoQueue:先进后出,后进先出PriorityQueue 按照优先级顺序进行排序存放进程池和线程池ProcessPoolExecutor:进程池的基本使用ThreadPoolExecutor:线程池的基本使用回调函数进程池的回调函数: 由主进程执行调用完成的线程池的回调函数 : 由当前子线程调用完成的协程:线程的具体实现用协程改写生产者消费者模型协程的历史:greenl
2021-08-12 16:31:13 200
原创 线程、守护线程、线程锁、事件
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录线程概念线程的基本使用用类定义线程线程中的相关属性守护线程概念线程锁信号量:Semaphore死锁 互斥锁 递归锁语法上的死锁逻辑上的死锁递归锁用递归锁解决2中(面条-筷子)的死锁现象互斥锁事件:Event概念基本语法模拟链接远程数据库线程概念首先,明确一下线程和进程的定义进程:资源分配的最小单位线程:cpu执行程序的最小单位线程的基本使用一个进程里包含了多个线程,线程之间是异步并发from threading i
2021-08-12 10:43:48 72
原创 进程锁、事件、进程队列、进程间共享数据、生产者消费者模型
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录进程锁(Lock)锁的基本概念锁的基本用法模拟12306抢票软件信号量:Semaphone概念Semaphore的基本用法模拟KTV房间唱歌事件(Event)Event中的基本方法Event的基本语法is_set=Truewait里加参数模拟经典红绿灯效果进程队列:Queueput() 往队列里放值get() 从队列里取值get_nowait 拿不到数据就报错设置队列的长度进程之间的数据共享生产者和消费者模型基本模型优化版Joina
2021-08-11 22:16:08 88
原创 进程、守护进程
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录进程概念进程的基本使用创建带有参数的进程进程之间的数据彼此隔离多个进程之间是异步并发join:先子后主join基本语法join:多个子进程守护进程(deamon)守护进程的基本概念守护进程的基本使用方法守护进程:多个子进程守护进程实际用途:监控报活使用自定义类的方法创建进程自定义进程类的要求基本语法带有参数自定义类的方法两张和进程相关的图进程概念什么是进程?进程就是正在运行的程序,它是操作系统中,资源分配的最小单位什么
2021-08-11 10:44:17 93
原创 socketserver、hashlib模块、hmac应用、TCP登录
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录socketserversocketserver:实现TCP协议下Server端的并发socketserver的基本语法socketserver实现server端的并发hashlib模块基本用法加盐进阶版:动态加盐除了常见的md5加密,还有sha加密hmac加密基本语法动态加盐hashlib应用:文件校验针对于小文件进行内容校验针对于大文件进行内容校验用文件操作对大文件进行分段加密hmac应用:服务器的合法性校验TCP登录程序s
2021-08-10 22:40:11 100
原创 TCP、UDP、socket、黏包
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录TCP协议和UDP协议概念什么是socket?socketTCP基本语法TCP循环发消息UDP基本语法UDP循环发消息黏包出现黏包的原因黏包出现的两种情况黏包的应用场景解决黏包问题解决黏包方式一:先发送接下来要发送数据的大小解决黏包方式二:conn.send("00000100".encode())struct模块(解决黏包时使用)概念使用示例解决黏包方式三:使用struct模块TCP协议和UDP协议概念TCP(Transm
2021-08-10 16:38:01 125
原创 计算机网络概念
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录计算机网络概念网络开发的两大架构网络概念查看一台主机的IP地址什么是网段?端口OSI七层模型ARP协议ARP协议由来ARP协议功能ARP协议实现过程ARP协议实现原理TCP三次握手和四次挥手三种状态TCP三次握手和四次挥手图关于三次握手和四次挥手阐述计算机网络概念早期没有网络 a.py -> b.py 借助c文件中转a文件把数据放在c文件中,b文件从c文件取b文件把数据放在c文件中,a文件从c文件取构成了早期
2021-08-09 23:06:53 157
原创 魔术方法、5个类的魔术属性和单态
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录魔术方法__ init __构造方法概念基本语法带有多个参数的构造方法魔术方法__ init __构造方法概念1.触发时机:实例化对象,初始化的时候触发2.功能:为对象添加成员3.参数:参数不固定,至少一个self参数4.返回值:无基本语法# 1.基本语法class MyClass(): def __init__(self): print("初始化方法被触发")
2021-08-08 21:27:44 109
原创 面向对象基础、面向对象的三大特征(封装、继承、多态)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录面向对象基础概述创建对象和类类的三种定义方式类的实例化类的基本结构面向对象之封装概念封装之对象的相关操作封装之类的相关操作实例化的对象/定义的类删除公有成员属性和公有成员方法面向对象之继承概念单继承面向对象基础概述1.面向过程:根据业务逻辑从上到下写垒代码2.函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可3.面向对象:对函数进行分类和封装,让开发“更快更好更强...”面向过程编程(Objec
2021-08-07 21:25:32 106
原创 正则表达式、正则函数、包的导入
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录正则表达式定义预定义字符集\d 匹配数字\D 匹配非数字\w 匹配数字字母下划线\W 匹配非数字或字母或下划线\s 匹配任意的空白符\S 匹配任意的非空白符\n 匹配一个换行符\t 匹配一个制表符字符组多个字符的匹配量词贪婪匹配和非贪婪匹配定义贪婪匹配非贪婪匹配边界符定义边界符的使用正则表达式定义findall(正则表达式,字符串) 把符合正则表达式的字符串存在列表中返回预定义字符集\d 匹配数字# \d 匹配数字s
2021-08-05 20:18:02 501
原创 内置函数、模块
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录内置函数round:四舍五入abs:绝对值函数sum:计算一个序列的和max min:获取一个序列里面的最大(最小)值pow:计算某个数值的x次方range:产生指定范围数据的可迭代对象bin / oct / hex:十进制转化成2/8/16进制chr / ord:ASCII码和字符之间的相互转换eval exec:将字符串当作python代码执行repr:不转义字符输出字符串input:接受输入字符串 (永远接受的是字符串)has
2021-08-04 10:49:02 157
原创 高阶函数、列表/集合/字典/推导式、递归函数
文章目录高阶函数(map filter reduce sorted)map高阶函数(map filter reduce sorted)高阶函数的定义:能够把函数当成参数传递的就是高阶函数常用的四大高阶函数:map filter reduce sortedmap
2021-07-30 21:22:05 670 1
原创 迭代器、生成器、装饰器
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录迭代器概念__iter__方法可判断该数据是否是可迭代数据关于迭代器需要注意的点定义一个迭代器判断一个迭代器调用迭代器重置迭代器使用isinstance()判断是否是可迭代对象/迭代器除了next()也可以使用以下两种方式调用迭代器中的数据生成器概念表现形式:生成器表达式生成器函数生成器函数的基本语法send的用法yield from用法装饰器迭代器概念1.迭代器的定义: 能被next调用,并不断返回下一个值的对象,叫做迭代
2021-07-29 21:06:27 153
原创 闭包函数、匿名函数
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录闭包函数什么是闭包闭包的意义复杂的闭包函数(多层)闭包的特征闭包的意义匿名函数闭包函数什么是闭包关于闭包,即函数定义和函数表达式位于另一个函数的函数体内(嵌套函数)。而且,这些内部函数可以访问它们所在的外部函数中声明的所有局部变量、参数。当其中一个这样的内部函数在包含它们的外部函数之外被调用时,就会形成闭包。也就是说,内部函数会在外部函数返回后被执行。而当这个内部函数执行时,它仍然必需访问其外部函数的局部变量、参数以及其他内
2021-07-27 18:53:22 183
原创 函数初识和函数的嵌套
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录函数初识什么是函数或者说为什么要用函数?函数的定义和使用函数的命名规则函数的参数概念普通形参默认形参普通形参+默认形参关键字实参普通实参+关键字实参普通收集参数 *args关键字收集参数 **kwargs命名关键字参数关于* 和 ** 的使用方法形参定义的顺序函数初识什么是函数或者说为什么要用函数?函数就是包裹一部分代码,去实现某一个功能,还可以重复使用这个功能。总结一下:函数:功能:包裹一部分代码,实现某一个功能,达成一
2021-07-25 22:48:44 116
原创 文件操作及相关函数
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录文件操作文件操作流程文件的操作模式读取文件的五种方式只读(r , rb)文件操作文件操作流程文件以什么编码存储的,就以什么编码打开参数:1.文件路径2.编码方式,encode3.执行动作(打开方式):只读,只写,追加,读写,写读…例如:打开一个已经存在的文件f = open('D:\qycache\飞碟说.txt',encoding='utf-8',mode='r')content = f.read()pr
2021-07-23 15:46:27 315
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人