- 博客(53)
- 收藏
- 关注
原创 djiango中间件五种方式(测试的时候注意)
中间件是 Django 请求/响应处理的钩子框架。它是一个轻量级的、低级的“插件”系统,用于全局改变 Django 的输入或输出。 每个中间件组件负责做一些特定的功能。例如,Django 包含一个中间件组件 AuthenticationMiddleware,它使用会话将用户与请求关联起来。 他的文档解释了中间件是如何工作的,如何激活中间件,以及如何编写自己的中间件。Django 具有一些内置的中间件,你可以直接使用。它们被记录在 built-in middleware reference 中。
2022-03-24 22:29:40
188
原创 css选择器详解
本文是转载的以防止后面找不到转载链接:https://ruanyifeng.com/blog/2019/11/css-position.html 根据id选择 根据class选择 根据tag标签选择 根据后代元素选择 根据子元素选择 根据组(group)选择 根据兄弟节点选择 根据属性元素选择 小技巧:如果选择元素的时候,不确定选择的内容是不是该元素的唯一属性值,可以用ctrl + f 直接在页面查找,比如找一个元素class 是 bg s_btn_wr的值,如果右下角那里显示的是1,就说明是唯一值,如果显
2022-02-18 15:26:43
471
原创 pip Fatal error in launcher: Unable to create process using (改变python根目录的位置,重装系统的原因等)
pip Fatal error in launcher: Unable to create process using (改变python根目录的位置,重装系统的原因等) 环境改变时候:python -m pip install --upgrade pip --force-reinstall -i http://mirrors.aliyun.com/pypi/simple/ (不加镜像会超时报错,可以进入到pip目录下操作) 常用的: (1)阿里云 http://mirrors.aliyun.com/p
2022-02-09 14:41:41
1094
原创 Linux下的Mysql用户基本操作
开启远程登录 sudo –i 2.cd /etc/mysql/mysql.conf.d 3.cp mysqld.cnf mysqld.cnf.bak 4.vi mysqld.cnf #找到43行左右,加#注释 5 # bind-address = 127.0.0.1 service mysql restart 7.修改用户表host值 use mysql; update user set host=’%’ where user=‘root’; 8.刷新权限 flush privileges; 添加用户
2021-12-05 22:27:14
1047
原创 mysql相关知识点
@LYY 命令的执行顺序 from on join where group by having select distinct order by 10.limit 聚合函数 无分组只聚合(select的时候) 一般Group by 字段 select 字段,聚合函数 聚合函数一般有 count avg max min sum where 在筛选条件中不可以出现聚合函数,having可以 limit 2(数量) offset 2含义:第3,4行 limit 9,4(数量) 第10,11,12,13行
2021-11-28 20:54:50
512
原创 三种方式创建不同的类
三种方式,三种含义 # -------------- class Player2: def __init__(self, name, atk): self.name = name self.atk = atk self.e = Enemy2(100) def attack(self): self.e.denmage(self.atk) class Enemy2: def __init__(self,
2021-11-16 17:59:28
135
原创 VARCHAR和CHAR的区别
主要区别: varchar 更加节省空间 ,不定长但小于给定的长度限制),效率低。 cahr 定长,但是占用空间,效率高。 数据库常常修改并且字段值长度不一致的建议用char ,因为用VARchar引起行迁移现象,避免造成多余的IO。 不常常修改的建议用Varcchar节省空间。 ...
2021-11-03 15:53:00
347
原创 2021-06-13
Ubuntu 上 Node.js 安装和卸载本篇文章转载在结尾处有说明 1、Ubuntu 安装 Node.Js1.1、执行检查可更新的软件:sudo apt-get update1.2、先用普通的apt工具安装低版本的node,然后再升级最新。sudo apt-get install nodejssudo apt install nodejs-legacysudo apt install npm1.3、更换淘宝的镜像,这个是必须的,用过的node的人都知道。sudo npm config set regis
2021-06-13 16:03:37
93
原创 2020-11-16
那我们今天下午,就是先删除了原来的uwsgi,然后找一些命令彻底删除干净,然后,再重新安转一个2.0 .9版本的uwsgi(日志里面运行的一直不是我们安装的版本,)然后再生成对应的链接命令是,sudo ln -s /usr/bin/python3/dist-packages/uwsgi /usr/bin/uwsgi,然后再改成http命令运行,就可以了, ...
2020-11-16 13:09:29
115
原创 2020-11-13
Access control allow credentials.是否接受跨域,cookie,比如5000的cookie保存到,8000的cookie中,但是这个cookie如果被拦截,信息就会暴露,所以没有必要,
2020-11-13 19:19:35
106
原创 2020-11-13
简单请求的请求过程,浏览器向服务端发送跨域请求(浏览器会自动按照cors的跨域方式垮一下,),携带origin(浏览器已经自动帮你做了),如果后端没处理,不让跨域,(解决方案,可以用jsonp方式跨域,jsonp只适合get请求,要想提交数据也不行,),然后后端会检查这个origin中的地址,是都在自己允许的白名单中,如果有,则返回access control allow origin,里面包含的有可接受的地址,也可以有页面主体, ...
2020-11-13 19:16:00
102
原创 2020-11-13
在实现签发token的过程中,我们采用了jwt的编码格式,我们先是自己做了一个,token,是自己写的没有调用jwt模块,我们用的是base64加密,因为jwt的模式他一定要你家一个head,里面包含了typ:JWT,这会影响传输效率,加大带宽,我们替换了b64加密结果中的=,因为b64加密的结果一定是4的倍数,解码也一样,因此在解码的时候又把=占位符号,添加回去,再进行,解码,如果有必要,我们还可以把header去掉,实现高效率的传输,但是以前建议先加上,加密出来的东西,可以放在jwt网站上,看看能否被官
2020-11-13 09:21:54
110
原创 2020-11-11
字典的底层原理,首先会对key进行哈西运算,变成16进制定长,长度为32位,再进行某个算法,比如余%5,运算,再存入,如果产生了哈西碰撞,不同的语言处理方式,不一样,python则是对它进行二次哈西运算,重新计算新位置,删除键的时候,哈西的探测链,如果看到这个空位置,(已经删除原来这里的键,但是上一次进行一次哈西的值变位置了,他知道是伪删除,就会自动进行哈西二次运算,计算出那个位置),因为如果只开辟一开始的五个空间肯定是不够存储的,一旦空闲位置,少于用量的1/3则会进行扩容,此时,会进行重新排座位。(空间换
2020-11-11 16:14:26
113
原创 2020-11-06
跨源的解决办法,1可以藏js代码中,因为静态资源是可以共享的,所以前端可以预留一个函数,传递参数为,返回的数据,固定名称比如callback=……,然后,后端获取callback,再调用,再返回数据,即可完成跨域 ...
2020-11-06 14:55:18
102
原创 2020-11-05
注意,请求:get请求头,无contenttype但是post一定有,content type, 响应:响应头中一定有content type
2020-11-05 11:31:36
132
原创 2020-11-05
用ajax异步还是同步,要考虑时序问题,如果上一个完成了才能进行下一步ajax耶是用同步,否则可以考虑异步,大部分都是异步。
2020-11-05 10:54:04
105
原创 2020-10-20
更新linux的镜像源,找到etc/apt/的sources.list文件,做好备份,在网上找到,对应乌班图版本的清华源或者阿狸源或者中科大的镜像源,然后复制,到sources.list中,再输入命令,sudo apt-get update即可 ...
2020-10-20 17:17:13
92
原创 2020-09-25
linux下关于开机乌班图黑屏的问题, 我真是吐了,搞了一下午,总算是发现了一些问题,在网上找的基本上就是netsh worksockt reset 没用啊,还是显示开机黑屏,好了不多说,直接上正文:首先就是打开虚拟机的设置选项,看到处理器了没,直接把每个处理器的数量加起来,加到2就行,就可以正常打开了,这个方法主要是针对那个net没用后,才搞得,(我自己的电脑加了内存条和换了固态硬盘)(有可能是硬件的问题,实在不行,换个固态硬盘就行,而且机械硬盘,容易坏,我上次就坏了丢了数据????) ...
2020-09-25 19:25:00
519
2
原创 2020-09-18
因为uwsgi无法启动django文件的问题 (注明,这是一位同学大佬告诉我的,为此我尝试了一个下午才得到解决) 问题:每次启动uwsgi只显示一个进程,并且无法访问,端口127.0.0.1:8000(在乌班图系统下) 解决方案:首先改一下,配置文件uwsgi.ini的端口配置为自己本地网络ip(如果你有云服务器的话就用私网ip端口号,用弹性公网ip访问)然后再在自己的uwsgi.ini的文件同一路径下,随便建立一个py文件,然后,在里面输入,def application(env, start_respo
2020-09-18 19:53:47
149
原创 2020-09-14
Jquery的基本选择器:1. 基本过滤选择器 a) “:first”,选取第一个元素,别忘记它也是被放在一个集合里哦!因为JQuery它是DOM对象的一个集合。如,“("tr:first")”返回所有tr元素的第一个tr元素,它仍然被保存在集合中。b)“:last”,选取最后一个元素。如,“("tr:first")”返回所有tr元素的第一个tr元素,它仍然被保存在集合中。 b)“:last”,选取最后一个元素。如,“("tr:first")”返回所有tr元素的第一个tr元素,它仍然被保存在集合中。b)
2020-09-14 16:58:36
111
原创 2020-05-16
变量 变量dir(对象)查看所有方法, 单纯的int, float 不是可迭代对象, 快速做判断,通过hasatter(变量,方法,) 返回布尔值 *
2020-05-16 20:39:15
129
原创 2020-04-29
私有化,障眼法, 下划线,类名,双下划线,类变量,(为私有化,) 双下划线,隐藏,类变量,无法直接复制,(判断,如果符合条件,责赋值,否则不赋值) 类变量__dict__实列变量 藏只是第一步,提供两个方法,用于改,和读的, 定义,第二步公开方法, raise Value Error ...
2020-04-29 20:48:22
144
原创 2020-04-29
面向对象, 封装,继承,多态, 封装,语法,两种 思想很多 封装数据,用一个类包起来,更符合人类思考方式 将数据与对数据的操作整合在一起, 封装行为,不需要思考细节,只需要考虑参数,只要能用即可,以模块化的方式进行编程,可以集中精力,设计,组织,指挥,多个类协同工作,向类外提供必要的功能,. 私有成员,做法,命名用双下划线开头, ...
2020-04-29 20:06:10
112
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人