自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 收藏
  • 关注

原创 Django总结

HTTP/0.9:功能简陋,只支持GET方法,只能发送HTML格式字符串。HTTP/1.0:支持多种数据格式,增加POST、HEAD等方法,增加头信息,每次只能发送一个请求(无持久连接)HTTP/1.1:默认持久连接、请求管道化、增加缓存处理、增加Host字段、支持断点传输分块传输等。HTTP/2.0:二进制分帧、多路复用、头部压缩、服务器推送200 OK 请求成功。一般用于GET与POST请求204 No Content 无内容。服务器成功处理,但未返回内容。

2023-11-27 22:42:40 480

原创 Django(十一、auth认证模块)

Django自带一个admin路由,但是需要我们提供管理员账户和密码,如果想要使用admin后台管理,需要先创建表,然后创建管理员账户。直接执行数据类迁移命令即可产生默认的auth_user表,该表就是admin后台管理默认的认证表1.创建超级管理员在执行创建管理员命令后,运行环境会提示我们输入用户名,邮箱(选填),密码等信息,依次输入即可。这样我们的auth_user表中就会添加一条数据,这条数据就是管理员用户信息。

2023-11-26 22:13:34 381 1

原创 Django(十、中间件)

中间件顾名思义,是介于request与response处理之间的一道处理过程,相对比较轻量级,并且在全局上改变django的输入与输出。因为改变的是全局,所以需要谨慎实用,用不好会影响到性能中间件流程图如何自定义中间件1.创建存储自定义中间件代码的py文件或者目录(如果中间件很多)2.参考自带中间件的代码编写类并继承3.在类中编写五个可以自定义的方法4.一定在配置文件中注册中间件才可以生效编写自定义的中间件(在mymiddlie中编写MyMiddleware001)

2023-11-23 22:53:25 731

原创 Django(九、cookie与session)

在讲之前我们先来回忆一下HTTP的四大特性。

2023-11-22 23:16:01 627

原创 Django(九、choices参数的使用、多对多表的三种创建方式、Ajax技术)

在定义choices这个对应关系的时候,可以用列表套元组,可以用字典套元组,随意,看自己心情自定义的这个对应关系的变量名(choices可以换别的)看你心情在往表中存数据时,不管是不是对应关系中的内容,都可以往表中存在查询使用choces参数的这个字段时,想要查询这个字段的值必须用get_字段名_display()才能获取到正确的对应内容固定句式 数据对象.get_字段名_display() 当没有对应关系的时候 该句式获取到的还是数字。

2023-11-20 21:57:37 1314

原创 Django(八、如何开启事务、介绍长见的字段类型和参数)

引入事务Django ORM提供了至少三种开启事务的方式常见的字段类型和参数需要说明的是,这些orm字段并非和sql字段一一对应,有些是封装了一些逻辑功能在字段的创建、存储过程中的。

2023-11-18 21:38:36 380

原创 Django(七、模型层)

3.id字段是自动添加的,如果想自定义主键,只需要在其中一个字段中店家primary_key=True,如果django发现你已经明确的设置了Field.primary_key,它将不会自动添加ID列。1.django自带的sqlite3数据可对时间字段不敏感,有时候会展示错乱,所以我们习惯切换成常见的数据库比如MySQL。结论:有些不是QuerySet对象,就不能通过点query的形式点出来,就只能使用通过的方法。2.如果想查看所有ORM底层的SQL语句,也可以直接在配置文件添加日志记录。

2023-11-15 22:57:25 538

原创 Django(六、模板层)

关于模板中的继承,,至少有三个区域的模板可以继承去渲染,分别是页面内容区、CSS样式区、JS代码区。过滤器是支持链式的,可以将多个过滤器串起来,上一个过滤器的输出作为下一个的输入。3.函数名也会自动加括号并执行将返回值展示到页面上(不支持额外传参)标签之forloop关键字,forloop模板语法自带的变量名。5.对象不会加括号,但可以获取对象的一些数据属性。针对可以加括号调用名字模板语法都会自动加括号调用。当我们多个页面有相似的页面,我们可以采用下列方法。点语法既可以索引也可以点键。

2023-11-15 19:39:57 199

原创 Django(五、视图层)

1.从CBV的路由匹配切入,path(‘login/’, views.MyLoginView.as_view()),根据观察路由后面的函数可知,MyLoginView是我们自己定义的类,但类点一个(as_view())证明as_view()是一个方法,但是as_view既不是自定义类中的属性也不是自定义类的方法,由此可得,只要往类的父类里面去寻找。4.查看dispatch函数,由于我们对象及其类的属性中都没有dispatch,所以这个函数还是我们父类View的类体函数。封装了一个函数,作为对应路由的函数。

2023-11-14 21:52:47 251 1

原创 Django(四、路由层)

项目1需要使用:django1.11 python38项目2需要使用:django2.22 pymysql requests python38项目3需要使用:django3.22 request_html flask urllib3 python38虚拟环境:能够针对相同版本的解释器创建多个分身 每个分身可以有自己独立的环境pycharm创建虚拟环境:(每创建一个虚拟环境就相当于重新下载了一个全新的解释器)

2023-11-13 22:05:21 546

原创 Django(三、数据的增删改查、Django生命周期流程图)

1.查如何获取对象 可以使用first()方法 如果没有值会返回None 我们if判断即可obj = User.object.get(id=edit_id) # 获取一个用户对象print(obj.name) # 查询这个用户的name值2.增方法一:# 向数据库写入一条记录,name字段值为jack,password字段值为123方法二:obj.save()3.改方法一:方法二:obj.name = 'tom' # 修改这个用户的name属性值。

2023-11-12 22:42:14 1665

原创 Django(二、静态文件的配置、链接数据库MySQL)

ORM:对象关系映射​ 优点:它能够让不会SQL语句的python程序员,使用python面向对象的语法来操作数据库。​ 缺点:封装程度太高,有时候sql语句的效率偏低,需要自己写SQL语句。类 表对象 一条条数据对象点名字 数据获取字段对应的值。

2023-11-09 23:01:18 1259

原创 Django(一、简介,安装与使用)

web应用程序是一种可以通过web访问的应用程序,用户只需有浏览器即可,不需要再安装其他软件比如:淘宝网、京东网、博客园等都是基于web应用的程序应用程序有两种模式C/S、B/SC/S是客户端/服务端程序,也就是说这类程序一般独立运行。而B/S就是浏览器端/服务端应用程序,这类应用程序一般借助IE等浏览器来运行。web应用程序一般是B/S模式被人写好的框架(就是一堆文件和目录),我们只需要在固定的位置写代码即可。

2023-11-08 21:09:20 910

原创 jQuery类库

jQuery类库类似python中的模块。IE浏览器:前端针对iE有时候需要单独写一份代码jQuery是一个轻量级的、兼容多浏览器的JavaScript库。jQuery使用户能够更方便地处理HTML Document、Events、实现动画效果、方便地进行Ajax交互,能够极大地简化JavaScript编程。它的宗旨就是:“Write less, do more.“

2023-11-06 19:02:24 143

原创 前端BOM、DOM

此时,文档中的所有对象都位于DOM中,并且所有图像,脚本,链接和子框架都已完成加载。DOM 是指文档对象模型,通过它可以访问HTML文档的所有元素,既然DOM操作是通过js代码来操作标签,那么我们需要先学习如何查找标签之后才能给标签绑定一些js代码(DOM操作)DOM(Document Object Model)是指文档对象模型,通过它,可以访问HTML文档的所有元素。浏览历史对象,包含了用户对当前页面的浏览历史,但我们无法查看具体的地址,可以简单的用来前进或后退一个页面。

2023-11-02 21:46:23 205

原创 前端JavaScript

全称JavaScript但是与Java一毛钱关系都没有 之所以这么叫是为了蹭Java的热度。JavaScript是一门前端工程师的编程语言 但是它本身有很多逻辑错误(不是很严谨)。IT行业鄙视链: 后端 > 前端、运维、测试、产品、老板前端想一统天下:node.js1996年11月,JavaScript的创造者–Netscape公司,决定将JavaScript提交给国际标准化组织ECMA,希望这门语言能够成为国际标准。

2023-11-01 21:38:49 181

原创 前端CSS

层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。CSS 能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力。简单理解:CSS如何显示HTML元素。当浏览器读到一个样式表,它就会按照这个样式表来对文档进行格式化(渲染)。

2023-10-31 21:06:25 869

原创 前端HTML

任何与用户直接打交道的操作页面,都可以称之为前端(手机页面app、电脑页面软件、平板页面软件)1.超文本标记语言(Hypertext Markup Language, HTML)是一种用于创建网页的标记语言。2.本质上是浏览器可识别的规则,我们按照规则写网页,浏览器根据规则渲染我们的网页。对于不同的浏览器,* 对同一个标签可能会有不同的解释。(兼容性问题)3.网页文件的扩展名:.html或.htm。

2023-10-30 21:43:37 259

原创 MySQL数据库 #5

视图就是通过查询得到一张虚拟表,然后保存下来,下次直接使用即可。在满足对某张表数据的增、删、改的情况下,自动触发的功能称之为触发器。​ 开启事务之后,只要没有执行commit操作,数据其实都没有真正刷新到硬盘。开启事务检测操作是否完整,不完整主动滚回上一个状态,如果完整就应该执行commit操作。在SQL标准中定义了四种隔离级别,每一种级别都规定了一个事务中所做的修改InnoDB支持所有隔离级别 set transaction isolation level 级别。

2023-10-29 16:22:22 93

原创 MySQL数据库 #4

文章目录一、MySQL外键基本概念1. 表与表之间的关系1.一对多的表关系2.多对多3.一对一注意事项2.多表查询1.子查询2.数据准备3.连表查询(重点)二、多表查询练习题1.习题试题的SQL文件2.Navicata可视化软件1.连接数据库2 操作数据库3.导入备份4.查询数据5.修改用户信息一、MySQL外键基本概念1、MySQL中“键”和“索引”的定义相同,所以外键和主键一样也是索引的一种。不同的是MySQL会自动为所有表的主键进行索引,但是外键字段必须由用户进行明确的索引。用于外键关系的字段必须

2023-10-25 21:35:09 257 1

原创 MySQL数据库 #3

是因为InnoDB存储引擎内部有一个隐藏的主键,这个主键我们看不到,它也不能够加快查询速度,仅仅是为了帮助我们把表创建成功. 所以,以后我们创建表的时候都主动的创建一个主键,我们自己创建的主键能够加快查询速度,因为是一个索引.大多都给id字段加了,所以,每一张表都要有一个id字段,并且一张表中不只是有一个主键,可以有多个主键,但是,大多数情况下,都只有一个。InnoDB存储引擎规定每一张表都要有一个主键,但是,我之前创建的表都没有指定主键, 表是怎么创建成功的?单纯的分组时没有意义的。

2023-10-24 21:54:12 437

原创 MySQL数据库 #2

它是MySQL5.5版本及之前的版本默认的存储引擎、它的读取速度很快相比较与InnoDB,但是它的数据安全性较低,相对于InnoDB存储引擎。首先将原来的配置文件my-default.ini复制一份,重命名为my.ini,然后用记事本打开,将里面的内容全部删掉,添加以下内容。以后再自行更新和删除的sql语句的时候,一定要细心、好好看看你的条件是否正确,否则会发生所有的数据都会改变。varchar(4): 可变长类型,超出4位不显示,不够4位的,有几位存几位。select * from 表名;

2023-10-23 21:59:43 304

原创 并发编程 # 3

怎么避免的这个问题,那就是在Python这门语言设计之处,就直接在解释器上添加了一把锁,这把锁就是为了让统一时刻只有一个线程在执行,言外之意就是哪个线程想执行,就必须先拿到这把锁(GIL), 只有等到这个线程把GIL锁释放掉,别的线程才能拿到,然后具备了执行权限.计算密集型,消耗cpu,如果开了8个线程,第一个线程会一直占着cpu,而不会调度到其他线程执行,其他7个线程根本没执行,所以我们开8个进程,每个进程有一个线程,8个进程下的线程会被8个cpu执行,从而效率高。

2023-10-21 14:48:49 66

原创 MySQL数据库

它是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。bin mysql . exe # 自带的客户端 mysqld . exe # 自带的服务端 data:MySQL的数据存储的地方my - default . ini:这个是MySQL的配置文件。

2023-10-20 20:57:51 45

原创 数据库的基本知识理论

数据库是“按照数据结构来组织、储存和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、可以共享、统一管理的大量数据的集合。数据库时存放数据的仓库。它的存储空间很大,可以存放百万条、千万条、上亿条数据。在数据库的发展史上,数据库先后经历了层次数据库、网状数据库和关系数据库等各个阶段的发展,数据库技术在各个方面的快速的发展。

2023-10-20 19:56:37 37

原创 并发编程 #2

锁在IT界都是非常重要的,不单单只有在Python中出现,尤其是数据库中的锁更多。比如:表锁、行锁、悲观锁、乐观锁、进程锁、互斥锁、递归锁、可重入锁、死锁、等···

2023-10-18 21:39:03 39

原创 并发编程 #1

进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。程序是永久的,进程是暂时的。1.系统初始化(查看进程linux中用ps命令,windows中用任务管理器,前台进程负责与用户交互,后台运行的进程与用户无关,运行在后台并且只在需要时才唤醒的进程,称为守护进程,如电子邮件、web页面、新闻、打印)要想多个进程交替运行,操作系统必须对这些进程进行调度,这个调度也不是随机进行的,而是需要遵循一定的法则,由此就有了进程的调度算法。

2023-10-17 22:07:08 34

原创 网络编程#2

能够唯一表示网络中的进程后,它们就可以利用socket进行通信了,什么是socket呢?我们经常把socket翻译成套接字,socket是在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作抽象为几个简单的接口供应层调用已实现进程在网络中通信。6.recv() 接收消息。4.accept() 等待客户端链接。1.socket.socket() 产生socket对象。

2023-10-16 21:49:13 31

原创 网络编程与并发编程

ATM:三层架构本质也属于软件开发架构的范畴软件设计的大方向>>>:统一接口微信小程序支付宝小程序基于网络编写代码,能够实现数据的远程交互。

2023-10-15 18:50:03 122

原创 Python面向对象 #5 异常与元类

pass。

2023-10-11 20:59:17 40

原创 Python面向对象 #4 反射与内置方法

在上一篇文章中我们讲到了继承知道了继承是一种什么“是”什么的关系。然而类与类之间还有另一种关系,这就是组合。

2023-10-10 22:45:25 75 1

原创 Python面向对象 #3 面向对象的三大特征

1.封装是面向对象编程的一大特点2.面向对象编程的第一步:将属性和方法封装到一个抽象的类中(为什么说是抽象的类,因为类不能直接使用)不让用户直接调用,而是开发一些接口间接调用3.外界使用类创建对象,然后让对象调用方法4.对象方法的细节都被封装在类的内部继承是一种新建类的方式,新建出来的类我们称为是“子类或者是派生类”,被继承的的类我们称为是“父类或者是基类”当然新建出来类、子类可以遗传父类的所属特性。

2023-10-09 21:59:09 32

原创 Python面向对象 #2

而当对象来调用info()的时候,由于对象调用自己的绑定方法,会自动将对象当作第一个参数传递进去,所以,当类中()方法没有带参数时,而你又给它传递了一个,显然是会报错的。既然类中的方法,默认都是绑定给对象使用,那么,我们要采取一点措施,将类中的绑定方法解除对象绑定关系,进而绑定到类上。首先我们要知道,凡是类中的方法或者是函数,都是默认都是绑定给对象使用的,下面我们代码实例来讲解绑定方法的应用。两者报错结果一致,这就说明了,当对象来调用类的绑定方法时,也是自动将类传递进去,并不需遵循函数参数传递的规则。

2023-10-08 21:07:27 36

原创 Python面向对象

面向过程中的过程就是先干什么,再干什么,最后干什么,一种机械的思维方式程序中如果想产生对象,必须先有类,但生活中,一般先有对象再有类school = '南山幼儿园' # 类属性,就是变量# 函数写在类里面就称为方法def choice_student(student, course): # 赋予两个形参,一个是字典,一个是课程print('%s选课成功:%s' % (student['name'], student['course']))

2023-10-07 20:27:59 36

原创 第三方模块下载与安装与日志模块

日志就是在编写代码是记录一些过程变化,日入记录用户是什么时候登录的,什么时候注册的,日志模块的要求,只需看懂和会CV复制修改即可,日志模块的目的就是方便后续查看错误原因。1.导入模块2.日志的级别:'''后续写日志时,可以按照日志级别选择性记录'''logging.debug('debug message') #10级logging.info('info message') #20级logging.warning('warning message') #30级。

2023-09-25 19:17:38 218

原创 Python内置模块#3

序列就是字符串序列化就是把其他数据类型转换成json字符串的过程把json字符串转化成其他数据类型的过程就是反序列化。

2023-09-22 19:20:40 107

原创 Python内置模块#2

os模块是与操作系统交互的接口。随机生成四、五、六位数验证码。随机生成一个快递单号。

2023-09-21 20:50:11 106

原创 Python内置模块

Y年 m月 d日 H时 M分 S秒 X时间:分:秒。DateTime 可以获取 当前时间、年、月、日、时、分、秒、微秒、星期几、UTC时间、时间拼接。DateTime中的weekday() 函数用于获取周数 它将返回 0-6 范围内的数字。时间元组,主要是给计算机看的。

2023-09-20 21:26:26 127 1

原创 正则表达式与re模块

在python中,无论是正则表达式,还是待匹配的内容,都是以字符串的形式出现的,在字符串中\也有特殊的含义,本身还需要转义。正则表达式默认为贪婪匹配,也就是尽可能多的向后匹配字符,比如 {n,m} 表示匹配前面的内容出现 n 到 m 次(n 小于 m),在贪婪模式下,首先以匹配 m 次为目标,而在非贪婪模式是尽可能少的向后匹配内容,也就是说匹配 n 次即可。2.是一个强大的字符串匹配和处理工具(除了处理字符串,其他的什么都做不了)1.贪婪匹配:在满足匹配时,匹配尽可能长的字符串,默认情况下,采用贪婪匹配。

2023-09-17 20:45:37 153 1

原创 名字的查找顺序与绝对导入和相对导入

给文件名和模块名取名的时候一定不能够和内置模块名冲突import sys'''第一行E:\\Python_month_1\\day20就是你当前文件路径'''

2023-09-16 16:41:28 128 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除