摘要: ORM查询条件详解-contains和Icontains: contains:大小写敏感,判断某个字段是否包含了某个数据。示例代码如下: articles = Article.objects.filter(title__contains='hello') 在翻译成 SQL 语句为如下: select 阅读全文
posted @ 2020-01-01 18:34 小明911 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 查询操作: 查找是数据库操作中一个非常重要的技术。查询一般就是使用filter、exclude以及get三个方法来实现。我们可以在调用这些方法的时候传递不同的参数来实现查询需求。在 ORM 层面,这些查询条件都是使用 field + __ + condition 的方式来使用的。以下将那些常用的查询 阅读全文
posted @ 2020-01-01 18:32 小明911 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 查询操作 查找是数据库操作中一个非常重要的技术。查询一般就是使用 filter 、 exclude 以及 get 三个方法来实现。我们可以在调用这些方法的时候传递不同的参数来实现查询需求。在 ORM 层面,这、些查询条件都是使用 field + __ + condition 的方式来使用的。以下将那 阅读全文
posted @ 2019-12-29 18:53 小明911 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 表关系之多对多场景: 1、应用场景:比如文章和标签的关系。一篇文章可以有多个标签,一个标签可以被多个文章所引用。因此标签和文章的关系是典型的多对多的关。2、实现方式:Django 为这种多对多的实现提供了专门的 Field 。叫做 ManyToManyField 。还是拿文章和标签为例进行讲解。 示 阅读全文
posted @ 2019-12-28 15:45 小明911 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 表关系之一对一应用场景: 比如一个用户表和一个用户信息表。在实际网站中,可能需要保存用户的许多信息,但是有些信息是不经常用的。如果把所有信息都存放到一张表中可能会影响查询效率,因此可以把用户的一些不常用的信息存放到另外一张表中我们叫做UserInfo。但是用户表User和用户信息表UserInfo就 阅读全文
posted @ 2019-12-28 15:03 小明911 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 表关系:表之间的关系都是通过外键来进行关联的。而表之间的关系,无非就是三种关系:一对一、一对多(多对一)、多对多等。以下将讨论一下三种关系的应用场景及其实现方式。 一对多:1. 应用场景:比如文章和作者之间的关系。一个文章只能由一个作者编写,但是一个作者可以写多篇文章。文章和作者之间的关系就是典型的 阅读全文
posted @ 2019-12-28 14:42 小明911 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 外键删除操作: 如果一个模型使用了外键。那么在对方那个模型被删掉后,该进行什么样的操作。可以通过 on_delete 来指定。可以指定的类型如下:1、CASCADE :级联操作。如果外键对应的那条数据被删除了,那么这条数据也会被删除。2、PROTECT :受保护。即只要这条数据引用了外键的那条数据, 阅读全文
posted @ 2019-12-28 14:08 小明911 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 外键:在 MySQL 中,表有两种引擎,一种是 InnoDB ,另外一种是 myisam 。如果使用的是 InnoDB 引擎,是支持外键约束的。外键的存在使得 ORM 框架在处理表关系的时候异常的强大。因此这里我们首先来介绍下外键在 Django 中的使用。 类定义为 class ForeignKe 阅读全文
posted @ 2019-12-26 22:03 小明911 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 模型中 Meta 配置: 对于一些模型级别的配置。我们可以在模型中定义一个类,叫做 Meta 。然后在这个类中添加一些类属性来控制模型的作用。比如我们想要在数据库映射的时候使用自己指定的表名,而不是使用模型的名称。那么我们可以在 Meta 类中添加一个 db_table 的属性。示例代码如下: cl 阅读全文
posted @ 2019-12-26 22:01 小明911 阅读(176) 评论(0) 推荐(0) 编辑
摘要: Field的常用参数: null: 如果设置为 True , Django 将会在映射表的时候指定是否为空。默认是为 False 。在使用字符串相关的 Field (CharField/TextField)的时候,官方推荐尽量不要使用这个参数,也就是保持默认值 False 。因为 Django 在处 阅读全文
posted @ 2019-12-26 22:00 小明911 阅读(233) 评论(0) 推荐(0) 编辑