01 2019 档案
摘要:管理员动作 简单来说,Django管理员的基本工作流程是“选择一个对象,然后进行更改”。这对大多数用例都很有效。 然而当你一次性要对多个对象做相同的改变,这个流程是非常的单调乏味的。 在这些情况下,Django Admin 可以让你编写并注册“Action” —— 仅仅只是一个以更改列表页面上选中对
阅读全文
摘要:Django最强大的部分之一是自动生成的管理后台界面。 它从你的模型中读取元数据,以提供一个快速的、以模型为中心的界面,信任的用户可以在这里管理你网站上的内容。 建议管理后台仅作为组织的一个内部管理工具使用。 它不是为了建立你的整个前端。 管理站点有许多hook用于定制,但要注意试图专门使用这些ho
阅读全文
摘要:django表单的api,参考文档:https://yiyibooks.cn/xx/Django_1.11.6/ref/forms/api.html 绑定与未绑定形式: Form要么是绑定的,要么是未绑定的。 如果是绑定的,那么它能够验证数据,并渲染表单及其数据成HTML。 如果未绑定,则无法进行验
阅读全文
摘要:在web端与后端交互时,我们除了使用html原生的form标签,还可以使用django自带的表单。 Django 提供广泛的工具和库来帮助你构建表单来接收网站访问者的输入,然后处理以及响应输入。 HTML表单 在HTML中,表单的作用是收集标签中的内容,<form>...</form> 中间可以由访
阅读全文
摘要:在做一个web时,总是会出现各种错误,如400、403、404、500等。一般开发都要做对应的处理,给一些友好提示,或返回一些公益广告等。 在Django中,默认提供了常见的错误处理方式,比如: handler*名称都是固定的,不能随意更改,Django已经约定好的,不同的状态码对应不同的错误。另外
阅读全文
摘要:在一个请求到达的时候,最先达到的就是视图层,然后根据url映射到视图函数。这一部分我们来说明url的配置。 概述 为了给一个应用设计URL,你需要创建一个Python 模块,通常称为URLconf(URL configuration)。 这个模块是纯粹的Python 代码,包含URL 模式(简单的正
阅读全文
摘要:django的模板语言还是蛮多的,这里只是简单说明常用模板语言。 官方文档地址:https://yiyibooks.cn/xx/Django_1.11.6/index.html 变量 django中变量表示形如:{{ var }},这样表示的就是一个变量,django会根据上下文找到变量的值,来替换
阅读全文
摘要:一个建立好的模型,django会生成一套完整的API,以便对对象进行crud操作,下面就详细介绍crud操作。 先说一下操作环境: python2.7, django1.11.8, win7系统,借助于pycharm工具。 创建对象 Django 使用一种直观的方式把数据库表中的数据表示成Pytho
阅读全文
摘要:显然,关系数据库的力量在于将表相互关联。Django提供了定义三种最常见的数据库关系类型的方法:多对一,多对多和一对一。 在说明之前,首先来理解一下这三个概念: 多对一: 两个集合a,b;集合a中的多个元素对应集合a中的一个元素。 多对对:两个集合a,b;集合a中的多个元素对应集合b中的多个元素。
阅读全文
摘要:这片博文来详细说明django模型的使用,涉及到django模型的创建,字段介绍,以及django模型的crud操作,以及一对一等操作。 在使用模型之前,我们首先设置数据库选项,django的默认数据库时sqlite3,这里我们设置数据库引擎为mysql。 django模型中的字段类型 熟悉MySQ
阅读全文
摘要:在说明django模型之前,首先来说明一下django的生命周期,也就是一个请求到达django是如何处理的。【暂时不包含中间件】 浏览器的请求 >到达django中的urls中找到对应的映射 >到达视图层(返回的是html页面,html页面来自模板(templates)中的前端文件) >前端中若是
阅读全文
摘要:读写分离,简单的说就是把对数据库的读与写操作分开,以对应不同的数据库服务器。主数据库提供写操作,从数据库提供读操作,这样能有效地减轻单台数据库的压力。在很多系统中读操作的比例远高于写操作,所以对应的读操作的数据库可以有多台,通过负载均衡技术进一步分摊读操作的压力,让整个数据库系统高效,平稳地运行。而
阅读全文
摘要:mycat监听两个端口,分别为8066和9066;mycat服务默认的数据端口是8066,而9066端口则是mycat管理端口,用于管理mycat的整个集群状态。监听的端口可以在server.xml配置文件中修改。 连接管理端口的方法和连接8066端口的方法基本一样。 下面来介绍管理端口中使用的命令
阅读全文
摘要:mycat位于应用与数据库的中间层,可以灵活解耦应用与数据库,后端数据库可以位于不同的主机上。在mycat中将表分为两大类;对于数据量小且不需要做数据切片的表,称之为分片表;对于数据量大到单库性能,容量不足以支撑,数据通常需要通过水平切分均匀分布到不同的数据库中的表,称之为分片表。而中间件最终需要处
阅读全文
摘要:在介绍mycat之前,首先来了解一下数据库切分。 对于海量数据处理,按照使用场景,主要分为两类:联机事务处理(OLTP)和联机分析处理(OLAP). 联机事务处理也称为面向交易的处理系统,其基本特征是原始数据可以立即传送到计算中心进行处理,并在很短时间内给出处理结果。 联机分析处理是指通过多维的方式
阅读全文
摘要:因为在工作中没有使用分区表,更多的是使用mycat作为中间件做分库分表操作,但是作为MySQL的基本属性,这里只是简单介绍分区的操作,分区的类型。 博客中部分内容摘自: http://www.ywnds.com/?p=7226 查看当前数据库是否支持分区。(以下两种方式) 一般来说我们安装MySQL
阅读全文
摘要:这片博客来详细分区一下这哥俩! 首先来说明这两个字符类型: 如上直观的看到timestamp类型占用了更少的字节,但是timestamp表示的时间却是有限的。 这两个值都可以自动初始化并且更新为当前的时间戳,对于表中的任何TIMESTAMP或 DATETIME列,您可以将当前时间戳分配为默认值,自动
阅读全文
摘要:在查看MySQL优化的过程中会看到使用临时表,这里就说明一下临时表的用法! 参考博客: https://www.cnblogs.com/duanxz/p/3724120.html 和之前一样理论的东西可能来自这个博客或者官方文档的补充,但是实例都是自己测试的。 MySQL 临时表在我们需要保存一些临
阅读全文
摘要:show processlist显示正在运行的线程。如果有process权限,则可以查看所有正在运行的线程。否则,只能看到自己的线程。如果不使用full关键字,则只在info字段显示每个语句的前100个字符。 show processlist命令是非常有用的,如果你获得到“too many conn
阅读全文
摘要:在优化sql语句时,我们经常会用到explain语句,这里对explain语句做一个详细的总结说明。 The EXPLAIN statement provides information about how MySQL executes statements. EXPLAIN works with
阅读全文
摘要:上一片博文说明了全文索引的原理以及一些参数设置及如何创建全文索引。 MySQL数据库支持全文索引的查询,其语法如下: NATURAL LANGUAGE 全文检索通过match函数进行查询,默认采用natural language模式,其表示查询带有指定word的文档。 在上一片博客中,创建了一个表,
阅读全文
摘要:全文索引时将存储在数据库中的整本书或整篇文章中的任意内容信息查找出来的技术。它可以根据需要获取全文中有关章,节,段,句,词等信息,也可以进行各种统计和分析。 之前的MySQL数据库中,INNODB存储引擎并不支持全文索引技术,大多数的用户转向MyISAM存储引擎,不过这可能进行表的拆分,并需要将进行
阅读全文
摘要:这片博文我们会详细说明MySQL本身的日志,不包含重做日志和undo日志(这两个日志是innodb存储引擎的日志)。 MySQL本身的日志有以下几种(MySQL5.7版本): 错误日志 慢查询日志 通用日志 二进制日志 错误日志 默认情况下,错误日志是无法被禁止;错误日志的位置及日志名使用log_e
阅读全文