摘要: 双蛋问题的 Python 递归解决 今天看了 "李永乐老师关于双蛋问题的讲解视频" ,受用很大。本着好记性不如烂笔头的精神,把这个问题记录在此。 据传某大厂有这样一个面试题:手里有 2 个鸡蛋,另外有 100 层楼。有一未知的临界楼层,鸡蛋从临界楼层以下扔下去,一定不会碎;从临界楼层以上丢下去,一定 阅读全文
posted @ 2020-03-19 16:22 shuoliuchn 阅读(1630) 评论(0) 推荐(0) 编辑
摘要: 分而治之 分而治之,divide and conquer,D&C,一种著名的递归式解决问题的方法。这不是一个解决特定问题的算法,而是一种解决问题的思路。面对问题时,不再束手无策,而是会自问:“使用分而治之能解决吗?” D&C 算法是递归的,使用 D&C 解决问题的过程包括两个步骤: 1. 找出基线条 阅读全文
posted @ 2020-03-19 16:20 shuoliuchn 阅读(788) 评论(0) 推荐(0) 编辑
摘要: 解决 Django 自定义用户模型之前就已经数据迁移的 BUG Django 建议我们对于 AUTH_USER_MODEL 参数的设置一定要在第一次数据库迁移之前就设置好,否则后续使用可能出现未知错误。 所以自定义用户模型以后,执行 命令时,系统报错类似如下: 这是表示有一个叫 reversion 阅读全文
posted @ 2020-03-19 01:06 shuoliuchn 阅读(457) 评论(0) 推荐(0) 编辑
摘要: Django 外部脚本调用 models 数据库 如果要在 Django 没有运行的时候,从外部调用 ORM 的 models 数据库,直接导包是不行的。因为 model 的运行需要有 Django 环境。这时,我们就需要把 Django 的环境配置到系统中。 配置的代码可以在 manage.py 阅读全文
posted @ 2020-03-19 01:05 shuoliuchn 阅读(661) 评论(0) 推荐(0) 编辑
摘要: Django 的表单 form 组件 form 组件使用方法 form 组件主要有三个用途: 1. 生成页面可用的 HTML 标签 2. 对用户提交的数据进行校验 3. 保留上次输入内容 使用步骤: 1. 在应用文件夹下创建一个文件,名字随意,比如 。 2. 创建 form 类,继承自 : 3. 在 阅读全文
posted @ 2020-03-19 01:03 shuoliuchn 阅读(308) 评论(0) 推荐(0) 编辑
摘要: Django 中间件和请求的生命周期 自定义中间件流程(以 process_request 方法为例) 1. 在应用下面创建一个文件夹,名字随便,比如 。在这个文件夹下创建一个 py 文件,名字也随便,比如叫做 。 2. 在 xx.py 文件中定义类,类方法用来处理请求,写法如下: 3. 写完中间件 阅读全文
posted @ 2020-03-19 01:01 shuoliuchn 阅读(420) 评论(0) 推荐(0) 编辑
摘要: Django 操作 Cookie 和 session Cookie 初识 Cookie 的由来 大家都知道 HTTP 协议是无状态的。 无状态的意思是每次请求都是独立的。它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不会直接影响后面的请求响应情况。 一 阅读全文
posted @ 2020-03-19 01:00 shuoliuchn 阅读(193) 评论(0) 推荐(0) 编辑
摘要: JsonResponse json json,JavaScript Object Notation,JS 对象标记,是一种通用性极强的轻量级数据交互格式。其基础数据格式与 Python 中的基本数据格式比较如下: 在 JSON 中,并不能表示所有的 Python 数据类型。比如,datetime 类 阅读全文
posted @ 2020-03-19 00:58 shuoliuchn 阅读(626) 评论(0) 推荐(0) 编辑
摘要: Django 通过 form 表单和 ajax 上传文件 在默认情况下,form 表单是无法传输文件的。即便我们在 HTML 中写了 type 类型为 file 的 input 标签。这是因为 HTML 默认的表单传输方法为 。但是这种方法是不能传输文件的。用这种方法传输文件时,我们只能在后端看到文 阅读全文
posted @ 2020-03-19 00:52 shuoliuchn 阅读(411) 评论(0) 推荐(0) 编辑
摘要: Django 使用 ajax 和通过 csrf 认证的三种方式 ajax 特点 1. 局部刷新 2. 异步请求 Django 中 ajax 的写法 ajax 是封装在 jQuery 中的,要使用 ajax,首先要引入 jQuery。 CSRF 简介 CSRF(Cross site request f 阅读全文
posted @ 2020-03-19 00:46 shuoliuchn 阅读(1937) 评论(0) 推荐(0) 编辑
摘要: ORM 事务和锁 锁 我们可以这样给代码加锁: 事务 方式 1 全局配置 方式 2 视图函数加装饰器 方式 3 上下文加装饰器 阅读全文
posted @ 2020-03-19 00:44 shuoliuchn 阅读(160) 评论(0) 推荐(0) 编辑
摘要: ORM 执行原生 SQL 语句(了解) 众所周知,Django 的 ORM 效率是比较低的。偶尔或许会有需求,要使用原生 SQL 语句提高数据库的查询效率。 方式 1 object 对象的 raw 方法 方式 2 Django 自带的连接通道(配置的 pymysql) 方式 3 pymysql 阅读全文
posted @ 2020-03-19 00:40 shuoliuchn 阅读(283) 评论(0) 推荐(0) 编辑
摘要: Django ORM 多表增删改查 [TOC] 创建关系字段 ORM 通过使用字段的方式创建多表关系。常用的多表关系有: ForeignKey 外键,一对多关系字段 OneToOneField 一对一关系字段 ManyToManyField 多对多关系字段 直接看 代码: 基本的建表语句与单表操作一 阅读全文
posted @ 2020-03-19 00:38 shuoliuchn 阅读(418) 评论(0) 推荐(0) 编辑
摘要: Django 模型 model 数据库 ORM 单表操作 ORM 的介绍和基本用法 ORM, o bject r elational m apping,对象关系映射,是 Django 中调用和使用数据库的方法。ORM 封装了连接和操作数据库的 SQL 语句,我们可以通过熟悉的 Python 面向对象 阅读全文
posted @ 2020-03-19 00:36 shuoliuchn 阅读(194) 评论(0) 推荐(0) 编辑
摘要: Django URL 路由 urls 路由 对于 Django 1.x 版本来说,路由是通过 url 方法来写的,且默认会按照正则进行匹配: url 写法 无名分组 url 路由写法: 视图函数写法: 传参方式是位置传参。 有名分组 url 路由写法: 视图函数写法: 传参方式是关键字传参,不考虑参 阅读全文
posted @ 2020-03-19 00:34 shuoliuchn 阅读(194) 评论(0) 推荐(0) 编辑
摘要: Django 模板 template settings 配置 模板语法 万能的句点号 的写法 过滤器 过滤器用法: 不是所有过滤器都有参数,没参数的话写法: 内置过滤器 safe 介绍 Django 的模板中在进行模板渲染的时候会对 HTML 标签和 JS 等语法标签进行自动转义。原因显而易见,这样 阅读全文
posted @ 2020-03-19 00:32 shuoliuchn 阅读(160) 评论(0) 推荐(0) 编辑
摘要: Django 视图 view CBV 和 FBV FBV,function based view:基于函数的视图逻辑 CBV,class based view:基于类的视图逻辑 CBV 中 url 写法 视图写法: 源码重点。当调用到 as_view 方法时,会调用 dispatch 路由分发方法。 阅读全文
posted @ 2020-03-19 00:29 shuoliuchn 阅读(147) 评论(0) 推荐(0) 编辑
摘要: Django 初识 wsgi wsgi,web service gateway interface,网络服务网关接口,是应用程序和服务器程序之间沟通数据的格式要求 返回动态页面可以通过模板渲染的方式,可以用到 Python 中的 模块。 模板渲染的含义: 模板 HTML 文件 渲染 字符串替换 MV 阅读全文
posted @ 2020-03-19 00:28 shuoliuchn 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 动手搭建 Web 框架深入了解 Web 框架的本质 Web 框架的本质及自定义 Web 框架 我们可以这样理解:所有的 Web 应用本质上就是一个 socket 服务端,而用户的浏览器就是一个 socket 客户端,基于请求做出响应。客户都先请求,服务端做出对应的响应,按照 HTTP 协议的请求协议 阅读全文
posted @ 2020-03-19 00:24 shuoliuchn 阅读(369) 评论(0) 推荐(0) 编辑
摘要: HTTP 协议 HTTP 协议简介 超文本传输协议(英文: H yper T ext T ransfer P rotocol,缩写: HTTP )是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP 是万维网的数据通信的基础。 HTTP 是由蒂姆·伯纳斯·李于 1989 年在欧洲核子研究组 阅读全文
posted @ 2020-03-19 00:18 shuoliuchn 阅读(218) 评论(0) 推荐(0) 编辑