如何在 Django 中保证并发的数据一致性📅 2018年06月25日 · ☕ 3 分钟前面一部分主要讲乐观锁和悲观锁。锁从数据库层面,保证了并发时的数据一致性。了解锁,有助于对并发解决方案的理解。后面一部分主要讲的是 Django 中,并发场景下,保证数据一致性的解决办法。 1. 关于锁 1.1 乐观锁 乐观锁的出发点是,同一条数据很少会因为并发修改而产
Django 中使用 utf8mb4 支持 emoji 表情📅 2018年06月25日 · ☕ 2 分钟1. 什么是 utf8 理论上,utf8 使用 1-6 个字符, 实际上,最新的 utf8 规范只使用一到四个字节,最大能编码21位,正好能够表示所有的 17个 Unicode 平面。 2. 什么是 utf8mb4 utf8mb4 是 utf8 的超集,理论上原来使用 utf8,然后将字符集修改为 utf8mb4,也不会对已有的utf8 编码读
Django Model 与 E-R 图📅 2018年03月02日 · ☕ 3 分钟在需求逐步确认的过程中,系统的 DB 模型也逐步确认。有时使用,MySQL Workbench 这类工具绘制 E-R 图,然后生成 MySQL 数据库表,这时就需要反向生成 Django Models;有时直接写 Django Models ,但是又需要查看 E-R 图。本文主要解决上面两个需求,实现 Django Models 与 E-R 图之间的转换。 1. 生成 model 的
Django Model 中的 Meta 选项📅 2017年05月11日 · ☕ 3 分钟通过一个内嵌类“class Meta”给model定义元数据,类似下面这样: 1 2 3 4 class Foo(models.Model): bar = models.CharField(max_length=30) class Meta: #...... Model元数据就是:不是一个字段的任何数据 比如排序选项,admin选项等等。 下面是所有可能用到的 Meta 选项。没有一个选项是必需的。 是否添加 class Meta 到