大橙子学Django
文章平均质量分 59
一个甜甜的大橙子
通信工程师
终身学习者
web开发,机器学习,深度学习爱好者。
展开
-
【Django】聚合查询——聚合和其他 QuerySet 子句(filter() 、 exclude()、order_by()、values())
当对空的查询集或分组应用聚合操作时,结果通常默认为其 default 参数,通常是 None。这种行为发生是因为当执行的查询不返回任何行时,聚合函数会返回 NULL。原创 2024-03-05 23:37:54 · 1625 阅读 · 0 评论 -
【Django】聚合查询——连接和聚合
还是以下面的模型为例进行讨论,给出示例代码和示例结果。原创 2024-03-05 01:00:17 · 709 阅读 · 0 评论 -
【Django】聚合查询
本篇以下面的模型为基础进行讨论,根据查询目标列出示例代码,和示例结果。原创 2024-03-04 22:20:23 · 664 阅读 · 0 评论 -
【Django】执行查询——比较、删除、复制、批量修改对象
对于调用 update 的情况,还可以使用 F 表达式 来根据模型中另一个字段的值来更新字段。新建一个模型实例,保存后,将 pk 设置为 None 并将 _state.adding 设置为 True,再次保存就实现了“复制”。您可以基于相关字段进行过滤,但只能更新模型的主表中的列。这个方法立即删除对象并返回被删除的对象数以及一个包含每种对象类型的删除数的字典。需要注意的是,有的情况下模型的主键可能不是。要删除某个模型的所有对象,要查询得到包含所有对象的。字段,请将新值设置为要指向的新模型实例。原创 2024-03-03 23:05:10 · 625 阅读 · 0 评论 -
【Django】执行查询——Q对象
查询函数能混合使用 Q 对象和关键字参数。所有提供给查询函数的参数(即关键字参数或 Q 对象)均通过 “AND” 连接。然而,若提供了 Q 对象,那么它必须位于所有关键字参数之前。等当中,如果有多个关键字参数,那他们在SQL的查询逻辑中是。作为位置(未命名的)参数。若你为查询函数提供了多个。现实中有时候我们查询的逻辑并不是简单的。每个接受关键字参数的查询函数 (例如。上使用运算符时,它会产生一个新的。) 也同时接受一个或多个。参数,这些参数会通过。原创 2024-03-03 19:46:33 · 358 阅读 · 0 评论 -
【Django】执行查询——查询JSONField
根据json数据的键进行查找,用__连接,可以多个键连接一起,如果某个值是一个列表,要进行索引,就用整数代表该列表的索引。contains 查询返回的对象是那些包含给定键值对的顶层字段的对象。观察两个实例在数据库中的表现,可以发现。在使用JSONField时,要注意。我们首先创建两个Dog实例。原创 2024-03-02 23:54:37 · 647 阅读 · 0 评论 -
【Django】执行查询—检索对象(二)
pk查询等同于通过模型的 primary key 进行过滤,直接上例子,下面三个语句是等效的。任何查询条件都可以与 pk 结合使用,pk 查询也可以跨越关联进行。原创 2024-03-02 00:38:19 · 518 阅读 · 0 评论 -
【Django】执行查询—跨关系查询中的跨多值关联问题
如果使用多个filter函数,单个函数接收单个条件,采用链式调用的方式来查询,则先过滤第一个查询条件,其返回的是QuerySet对象,注意:由于是跨关联关系查询,我们时刻要清除自己检索的是什么,这里我们检索的是Blog对象,而不是Entry对象,所以第一个过滤器返回的QuerySet内包含的也是Blog对象,而不是Entry对象。这个结果看起来有点怪,官方文档的解释是由于第二个(更宽松的)查询链接了多个过滤器,它对主模型进行了多次连接,可能会产生重复的结果。下面是其他网友的解释,可以参考。原创 2024-03-01 22:20:19 · 978 阅读 · 0 评论 -
【Django】执行查询—F()表达式
对象中使用加法、减法、乘法、除法、取模和幂算术,既可以与常数一起使用,也可以与其他。可以实现将模型字段值与同一模型中的另一字段做比较。Django 支持在表达式中使用变换,包括了。对象中使用双下划线符号来跨越关系。对象支持位操作,包括。Django 支持在。原创 2024-03-01 23:34:14 · 824 阅读 · 0 评论 -
【Django】执行查询—检索对象
QuerySets 是惰性的 —— 创建 QuerySet 的过程不涉及任何数据库活动。你可以一直堆叠过滤条件,但 Django 实际上不会运行查询,直到 QuerySet 被 评估。由此可见,对 QuerySet 进行细化的结果本身也是一个 QuerySet,因此可以将细化操作链接在一起。通过添加过滤条件精炼原始 QuerySet。返回一个新的 QuerySet,包含的对象 不 满足给定查询参数。返回一个新的 QuerySet,包含的对象满足给定查询参数。原创 2024-02-29 23:57:04 · 865 阅读 · 0 评论 -
【Django】执行查询—创建和修改对象
更新 ManyToManyField 有一些不同之处——可以使用字段上的 add() 方法来添加一个记录到关系中。原创 2024-02-29 23:45:21 · 641 阅读 · 1 评论 -
【Django】model模型—模型继承
这在抽象基类中一般会引发问题,因为基类中的字段都被子类继承,且保持了同样的值(包括 related_name 和 related_query_name)。为了解决此问题,当你在抽象基类中(也只能是在抽象基类中)使用 related_name 和 related_query_name,部分值需要包含 ‘%(app_label)s’ 和 ‘%(class)s’。由于Python继承的工作方式,如果子类从多个抽象基类继承,则默认情况下仅继承第一个列出的类的 Meta 选项。原创 2024-02-28 23:53:05 · 847 阅读 · 0 评论 -
【Django】model模型—模型属性与方法
模型当中最重要的属性是 Manager。它是 Django 模型和数据库查询操作之间的接口,并且它被用作从数据库当中 获取实例,如果没有指定自定义的 Manager 默认名称是 objects。Manager 只能通过模型类来访问,不能通过模型实例来访问。原创 2024-02-28 22:50:56 · 693 阅读 · 0 评论 -
【Django】model模型—字段关联关系:多对多
例子:如果 Pizza 含有多种 Topping (配料) – 也就是一种 Topping 可能存在于多个 Pizza 中,并且每个 Pizza 含有多种 Topping。字段可以在任何一个模型中添加,但不能同时在两模型中添加该字段。如果只是为了存储两个模型之间的多对多关系,上述方式就足够使用,但是如果需要在多对多的关系中存入其他数据,则需要一个。字段名最好是关联的模型名的复数形式,以表示所关联模型的集合,需要添加一个位置参数,即关联的模型类名。来创建关系,只要为中间任何必需的字段指定。原创 2024-02-27 22:13:14 · 809 阅读 · 0 评论 -
【Django】model模型—字段关联关系:多对一,一对一
字段名最好是关联的模型名,需要添加一个位置参数,即关联的模型类名。原创 2024-02-27 22:12:47 · 621 阅读 · 0 评论 -
【Django】自定义后台列表
() 方法是很重要的,这不仅仅能给你在命令行里使用带来方便,Django 自动生成的 admin 里也使用这个方法来表示对象。使用search_fields会在列表上增加一个搜索框,根据输入的关键词,后台使用LIKE搜索。使用list_filter可以在右边添加一个筛选栏,可以根据填入字段的属性进行筛选。默认情况下,Django 显示每个对象的 str() 返回的值。还有很多自定义方式有待学习。对model的自定义方法使用。这一列的显示效果进行改进。原创 2024-02-22 23:40:23 · 422 阅读 · 0 评论 -
【Django】Django自定义后台表单——对一个关联外键对象同时添加多个内容
它占据了大量的屏幕区域来显示所有关联的 Choice 对象的字段。对于这个问题,Django 提供了一种表格式的单行显示关联对象的方法。在三个插槽的末端,你会看到一个“Add another Choice”的按钮。如果你单击它,一个新的插槽会被添加。如果你想移除已有的插槽,可以点击插槽右上角的X。”,这一列可以删除使用“Add another Choice”按钮添加的行和已保存的行。一个投票问题包含多个选项,基本的表单设计只能一个选项一个选项添加,效率较低,如何在表单设计中一次性添加多个关联选项?原创 2024-02-22 22:56:04 · 714 阅读 · 0 评论 -
【Django】Django4.1.2使用xadmin避坑指南(二)
Django4.1.2使用xadmin避坑指南(二)原创 2022-11-22 16:11:02 · 2811 阅读 · 3 评论 -
【Django】Django4.1.2使用xadmin避坑指南
Django4.1.2使用xadmin避坑指南原创 2022-11-22 00:36:50 · 4816 阅读 · 7 评论 -
【Django实战】创建多对多关系表的三种模式及优缺点分析
django项目创建多对多关系表的三种模式及优缺点分析。原创 2022-05-22 22:42:40 · 308 阅读 · 1 评论 -
【Django】执行python manage.py makemigrations报错的解决方案
# 迁移数据库python manage.py makemigrations python manage.py migrate报错及解决方案原创 2022-05-17 09:25:49 · 10234 阅读 · 5 评论