04 2019 档案

摘要:################################################################### PUBLIC METHODS THAT ALTER ATTRIBUTES AND RETURN A NEW QUERYSET ###################################################################de... 阅读全文
posted @ 2019-04-30 11:36 陈小木 阅读(808) 评论(0) 推荐(0)
摘要:一、一般操作二、必知必会13条返回QuerySet对象的方法有特殊的QuerySet返回具体对象的返回布尔值的方法有返回数字的方法三、单表查询之神奇的双下划线四、ForeignKey操作4.1 正向查找4.1.1 对象查找(跨表)4.1.2 字段查找(跨表)4.2 反向操作4.2.1 对象查找4.2.2 字段查找五、ManyToManyField5.1 class RelatedManager方法... 阅读全文
posted @ 2019-04-30 11:35 陈小木 阅读(328) 评论(0) 推荐(0)
摘要:二、ORM表模型表(模型)的创建:1.ORM之增(create、save)一对多(ForeignKey):多对多(ManyToManyField()):2、ORM之删(delete)3、ORM之改(update和save)4、ORM之查(filter和value)1.查询API2.QuerySet与惰性机制本文链接:数据库与ORM - 肖峰其他文章:Django之ORM - 肖峰一、数据库的配置1... 阅读全文
posted @ 2019-04-30 11:31 陈小木 阅读(428) 评论(0) 推荐(0)
摘要:生成器生成器是生成一个值的特殊函数,它具有这样一个特点:第一次执行该函数时,先从头按顺序执行,在碰到yield关键字时该函数会暂停执行该函数后续的代码,并且返回一个值;在下一次调用该函数执行时,程序将从上一次暂停的位置继续往下执行。例子:求1-10的所有整数的立方并将其结果打印输出,正常使用列表的实现如下:def lifang_ls(): ls = [] for i in range(... 阅读全文
posted @ 2019-04-26 22:32 陈小木 阅读(248) 评论(0) 推荐(0)
摘要:Linux基础系统优化及常用命令 [TOC] Linux基础系统优化 Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令。 ifconfig 查询、设置网卡和ip等参数 ifup,ifdown 脚本命令,更简单的方式启动关闭网络 ip 阅读全文
posted @ 2019-04-25 21:21 陈小木 阅读(310) 评论(0) 推荐(0)
摘要:转自:【漫画】https 加密那点事首先,HTTP协议的缺点:没有对数据进行加密,都是明文传输的。如果要改进这种明文传输的协议,该如何做呢?对称加密:在每次发送真实数据之前,服务器先生成一把密钥,然后先把密钥传输给客户端。之后服务器给客户端发送真实数据的时候,会用这把密钥对数据进行加密,客户端收到加密数据之后,用刚才收到的密钥进行解密。如图:当然,如果客户端要给服务器发送数据,也是采用这把密钥来加... 阅读全文
posted @ 2019-04-25 21:19 陈小木 阅读(377) 评论(0) 推荐(0)
摘要:# Linux基础系统优化及常用命令 [TOC] ## Linux基础系统优化 Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令。 - ifconfig 查询、设置网卡和ip等参数- ifup,ifdown 脚本命令,更简单的方式启动 阅读全文
posted @ 2019-04-25 21:17 陈小木 阅读(443) 评论(0) 推荐(0)
摘要:一、Linux系统命令操作语法格式 二、目录操作 创建目录 查看目录 改变当前的目录/位置 打印当前工作目录 三、创建文件或者修改文件时间戳(文件属性) 四、stat命令 vim 查看文件内容 more命令 Linux快捷键 echo命令 特殊符号 复制(拷贝)命令 移动命令 删除命令 查找命令 管 阅读全文
posted @ 2019-04-25 21:14 陈小木 阅读(218) 评论(0) 推荐(0)
摘要:一、反射的基本概念二、反射示例三、反射的应用一、反射的基本概念反射:可以用字符串的方式去访问对象的属性,调用对象的方法(但是不能去访问方法),Python中一切皆对象,都可以使用反射。反射有四种方法:hasattr(obj, str) #判断一个对象是否有str属性或者string方法,有就返回True,没有就返回Falsegetattr(obj, str) #获取对象的属性或者方法,如果存在则打... 阅读全文
posted @ 2019-04-24 16:13 陈小木 阅读(160) 评论(0) 推荐(0)
摘要:一、IO模型介绍二、阻塞IO(Blocking IO)三、非阻塞IO(non-Blocking IO)四、多路复用IO(IO multiplexing)(重点)1.Python中的select模块2.select网络IO示例五、异步IO(Asynchronous IO)六、IO模型比较分析七、selectors模块1.select2.poll3.epoll4.selector一、IO模型介绍​ ... 阅读全文
posted @ 2019-04-23 09:54 陈小木 阅读(1718) 评论(0) 推荐(0)
摘要:一、pymysql的下载和使用1.pymysql模块的下载2.pymysql的使用二、execute()之sql注入三、增、删、改:conn.commit()四、查:fetchone、fetchmany、fetchall1.使用fetchone():2.使用fetchall():3.fetchmany():本节重点:pymysql的下载和使用execute()之sql注入增、删、改:conn.co... 阅读全文
posted @ 2019-04-23 09:52 陈小木 阅读(280) 评论(0) 推荐(0)
摘要:一、索引的介绍二 、索引的作用三、常见的几种索引:3.1 普通索引3.2 唯一索引3.3 主键索引3.4 组合索引四、索引名词五、正确使用索引的情况什么是最左前缀呢?六、索引的注意事项七、执行计划八、慢日志记录九、分页性能相关方案最优的解决方案一、索引的介绍数据库中专门用于帮助用户快速查找数据的一种数据结构。类似于字典中的目录,查找字典内容时可以根据目录查找到数据的存放位置,然后直接获取。二 、索... 阅读全文
posted @ 2019-04-23 09:52 陈小木 阅读(253) 评论(0) 推荐(0)
摘要:权限管理权限管理我们知道我们的最高权限管理者是root用户,它拥有着最高的权限操作。包括select、update、delete、update、grant等操作。那么一般情况在公司之后DBA工程师会创建一个用户和密码,让你去连接数据库的操作,并给当前的用户设置某个操作的权限(或者所有权限)。那么这时就需要我们来简单了解一下:如何创建用户和密码给当前的用户授权移除当前用户的权限如果你想创建一个新的用... 阅读全文
posted @ 2019-04-22 20:10 陈小木 阅读(176) 评论(0) 推荐(0)
摘要:一、多表连接查询1.交叉连接2.内连接3.外连接之左连接4.外连接之右连接5.全外连接二、符合条件连接查询三、子查询1.带in关键字的子查询2.带比较运算符的子查询3.带EXISTS关键字的子查询本节重点:多表连接查询符合条件连接查询子查询准备工作:准备两张表,部门表(department)、员工表(employee)create table department(id int,name varc... 阅读全文
posted @ 2019-04-22 20:09 陈小木 阅读(325) 评论(0) 推荐(0)
摘要:一、单表查询的语法二、关键字的执行优先级(重点)三、单表查询示例1.where约束2.group by分组查询3.聚合函数4.HAVING过滤5.order by查询排序6.limit 限制查询的记录数一、单表查询的语法SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field ... 阅读全文
posted @ 2019-04-22 20:08 陈小木 阅读(212) 评论(0) 推荐(0)
摘要:一、介绍二、插入数据 INSERT三、更新数据UPDATE四、删除数据DELETE一、介绍在MySQL管理软件中,可以通过SQL语句中的DML语言来实现数据的操作,包括使用INSERT实现数据的插入UPDATE实现数据的更新使用DELETE实现数据的删除使用SELECT查询数据二、插入数据 INSERT插入完整数据(顺序插入)语法一:INSERT INTO 表名(字段1,字段2,字段3…字段n) ... 阅读全文
posted @ 2019-04-22 20:07 陈小木 阅读(238) 评论(0) 推荐(0)
摘要:一 介绍二 如何找两张表之间的关系三 表的三种关系1.书和出版社2.作者和书籍的关系3.用户和博客本节的重点如何找出两张表之间的关系表的三种关系一 介绍因为有foreign key的约束,使得两张表形成了三种了关系:多对一多对多一对一二 如何找两张表之间的关系分析步骤:先站在左表的角度去找是否左表的多条记录可以对应右表的一条记录,如果是,则证明左表的一个字段foreign key 右表一个字段(通... 阅读全文
posted @ 2019-04-19 12:03 陈小木 阅读(131) 评论(0) 推荐(0)
摘要:一 介绍二 not null 与default三 unique四 primary key五 auto_increment六 foreign key快速理解foreign key创建两张表操作重点内容not null和defaultuniqueprimaryauto_incrementforeign key一 介绍约束条件与数据类型的宽度一样,都是可选参数作用:用于保证数据的完整性和一致性主要分为:... 阅读全文
posted @ 2019-04-19 12:01 陈小木 阅读(195) 评论(0) 推荐(0)
摘要:一 字符类型二 枚举类型和集合类型一 字符类型#官网:https://dev.mysql.com/doc/refman/5.7/en/char.html#注意:char和varchar括号内的参数指的都是字符的长度char类型:定长,简单粗暴,浪费空间,存取速度快字符长度范围:0-255(一个中文是一个字符,是utf8编码的3个字节)存储:存储char类型的值时,会往右填充空格来满足长度例如:指定... 阅读全文
posted @ 2019-04-19 12:00 陈小木 阅读(293) 评论(0) 推荐(0)
摘要:介绍一、数值类型二、浮点型验证三种类型建表验证三种类型的精度三、日期类型综合练习:介绍存储引擎决定了表的类型,而表内存放的数据也要有不同的类型,每种数据类型都有自己的宽度,但宽度是可选的详细参考链接:http://www.runoob.com/mysql/mysql-data-types.htmlmysql常用数据类型概括:数字:整型:tinyint int bigint小数: lo... 阅读全文
posted @ 2019-04-18 23:48 陈小木 阅读(274) 评论(0) 推荐(0)
摘要:本节掌握一、存储引擎(了解)二、mysql支持的存储引擎1、InnoDB 存储引擎2、MyISAM 存储引擎3、NDB 存储引擎4、Memory 存储引擎5、Infobright 存储引擎6、NTSE 存储引擎7、BLACKHOLE8、指定表类型/存储引擎三、表介绍四、创建表本节掌握存储引擎介绍(了解)表的增删改查一、存储引擎(了解)前几节我们知道mysql中建立的库=》文件夹,库中的表=》文件现... 阅读全文
posted @ 2019-04-18 23:47 陈小木 阅读(327) 评论(0) 推荐(0)
摘要:一、系统数据库二、创建数据库三、数据库相关操作四、了解内容一、系统数据库执行如下命令,查看系统库show databases;information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息、列信息、权限信息、字符信息等performance_schema: MySQL 5.5开始新增一个数据库:主要用于收集数据库服务器性能参数,记录处理查询请求时发生的... 阅读全文
posted @ 2019-04-18 23:45 陈小木 阅读(163) 评论(0) 推荐(0)
摘要:一 操作文件夹(数据库)增查改删二 操作文件(数据表)增查改删三 操作文件内容(数据记录)增查改删一 操作文件夹(数据库)增create database db1 charset utf8;查# 查看当前创建的数据库show create database db1;# 查看所有的数据库show databases;改alter database db1 charset gbk;删drop data... 阅读全文
posted @ 2019-04-18 23:44 陈小木 阅读(314) 评论(0) 推荐(0)
摘要:一 引子二 协程介绍三 Greenlet四 Gevent模块五 Gevent之同步与异步六 Gevent之应用-爬虫七 Gevent之应用-socket并发一 引子​ 本节的主题是基于单线程来实现并发,即只用一个主线程(很明显可利用的cpu只有一个)情况下实现并发,为此我们需要先回顾下并发的本质:切换+保存状态。 cpu正在运行一个任务,会在两种情况下切走去执行其他的任务(切换由操作系统强制... 阅读全文
posted @ 2019-04-17 22:07 陈小木 阅读(32498) 评论(5) 推荐(3)
摘要:一 信号量二 事件三 条件Condition四 定时器(了解)五 线程队列六 标准模块—concurrent.futures基本方法ThreadPoolExecutor的简单使用ProcessPoolExecutor的使用map的使用回调函数的应用一 信号量同进程一样,semaphore管理一个内置的计数器,每当调用acquire()时内置计数器-1,调用release()时内置计数器+1。计数器... 阅读全文
posted @ 2019-04-16 21:45 陈小木 阅读(1027) 评论(0) 推荐(0)
摘要:一 python与线程1.全局解释器锁GIL(用一下threading模块之后再来看~~)2.python线程模块的选择二 Threading模块1.线程创建2.多线程与多进程3.多线程实现socket4.Thread类的其他方法join方法:5.守护线程三 锁1.GIL锁(Global Interpreter Lock)2.同步锁GIL VS LockGIL锁与互斥锁综合分析互斥锁与join的区... 阅读全文
posted @ 2019-04-16 20:08 陈小木 阅读(253) 评论(0) 推荐(0)
摘要:一 背景知识1.进程2.有了进程为什么还要线程3.线程的出现二 线程和进程的关系三 线程的特点四 线程的实际应用场景五 内存中的线程六 用户级线程和内核级线程(了解)1.用户级线程2.内核级线程3.用户级和内核级线程的对比4.混合实现5.linux操作系统的NPTL一 背景知识1.进程​ 之前我们已经了解了操作系统中进程的概念,程序并不能单独运行,只有将程序装载到内存中,系统为它分配资源才能运... 阅读全文
posted @ 2019-04-16 10:47 陈小木 阅读(479) 评论(0) 推荐(0)
摘要:一 背景知识 顾名思义,进程即正在执行的一个过程。进程是对正在运行程序的一个抽象。 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一。操作系统的其他所有内容都是围绕进程的概念展开的。 所以想要真正了解进程,必须事先了解操作系统 PS:即使可以利用的cpu只有一个(早期的计算机确实如此),也能保证支持(伪)并发的能力。将一个单独的cp... 阅读全文
posted @ 2019-04-15 22:40 陈小木 阅读(444) 评论(0) 推荐(0)
摘要:​ 我们已经了解了,运行中的程序就是一个进程。所有的进程都是通过它的父进程来创建的。因此,运行起来的python程序也是一个进程,那么我们也可以在程序中再创建进程。多个进程可以实现并发效果,也就是说,当我们的程序中存在多个进程的时候,在某些时候,就会让程序的执行速度变快。以我们之前所学的知识,并不能实现创建进程这个功能,所以我们就需要借助python中强大的模块。​ 仔细说来,multip... 阅读全文
posted @ 2019-04-10 23:51 陈小木 阅读(597) 评论(0) 推荐(0)
摘要:# django的中间件?# django的请求周期# django的中间件做登录判断?# django的分页## 今天的任务# 1.实现登录功能# 2.实现用户的管理# 3.实现分页# 4.实现用户的新增,编辑,删除思考:在之前我们判断用户是否登录的方法:给视图函数加装饰器来判断是用户是否登录,把没有登录的用户请求跳转到登录页面。我们通过给几个特定视图函数加装饰器实现了这个需求。但是以后添加的视... 阅读全文
posted @ 2019-04-03 23:13 陈小木 阅读(146) 评论(0) 推荐(0)