随笔分类 -  Django中ORM知识点

ORM 全拼Object-Relation Mapping,中文意为 对象-关系映射,在MVC/MVT设计模式中的Model模块中都包括ORM。
django中设置字段动态默认时间的四种方式
摘要:1.create_time_one = models.DateTimeField('创建时间', default=datetime.now()) 2.update_time_one = models.DateTimeField('更新时间', default=datetime.now) 3.crea 阅读全文

posted @ 2023-06-14 17:24 一先生94 阅读(378) 评论(0) 推荐(0) 编辑

django中的Case,When查询
摘要:这一篇笔记将介绍条件表达式,就是如何在 model 的使用中根据不同的条件筛选数据返回。 这个操作类似于数据库中 if elif else 的逻辑。 1、model 和数据准备 这篇笔记我们用到的 model 是 Client,放在 blog/models.py 下 class Client(mod 阅读全文

posted @ 2023-06-08 19:22 一先生94 阅读(183) 评论(0) 推荐(0) 编辑

django中aggregate()和annotate()区别
摘要:在 Django 中,aggregate() 和 annotate() 是两个常用的聚合函数。它们都可以用来对一组查询结果进行聚合操作,但它们的作用是有所不同的。 aggregate() 是用于聚合整个查询集的结果,通常用于返回一个值,例如计算查询集中所有结果的数量、平均值、最大值或最小值等。使用 阅读全文

posted @ 2023-05-10 12:20 一先生94 阅读(419) 评论(0) 推荐(0) 编辑

django中的主表和从表
摘要:一、主表和从表 在 Django 中,ORM 的关系模型中,有主表和从表之分。其中,主表又称为“一方表”,从表也称为“多方表”。这里举个简单的例子:假设有两个模型 Blog 和 Entry,每个 Blog 包含多个 Entry: class Blog(models.Model): name = mo 阅读全文

posted @ 2023-04-24 18:53 一先生94 阅读(184) 评论(0) 推荐(0) 编辑

python当中的""和None,记一次小坑
摘要:在模型类当中,比如定义了,可以传入空值: class Person(models.Model): name = models.CharField(verbose_name='姓名',max_length=32) age= models.IntegerField(verbose_name='年龄',b 阅读全文

posted @ 2023-04-19 15:52 一先生94 阅读(68) 评论(0) 推荐(0) 编辑

Django条件查询的Case,When具体使用
摘要:这个操作类似于数据库中 if elif else 的逻辑。 1、数据准备: models.py class Client(models.Model): REGULAR = 'R' GOLD = 'G' PLATINUM = 'P' ACCOUNT_TYPE_CHOICES = [ (REGULAR, 阅读全文

posted @ 2023-04-07 16:44 一先生94 阅读(165) 评论(0) 推荐(0) 编辑

django查询优化之是否存在
摘要:res = Booking.objects.filter() # 方法一:exists() if res.exists(): print('queryset has data') else: print('queryset has no data') # 方法二:count() ==0 if res 阅读全文

posted @ 2023-03-27 21:47 一先生94 阅读(56) 评论(0) 推荐(0) 编辑

Django中makemigrations和migrate
摘要:一、django迁移命令的大致解析 1、python manage.py makemigrations命令的功能 对于首次执行这个命令时,会在原有的migrations目录下生成0001_inital.py文件; 当有了0001_inital.py文件,再执行该命令生成的迁移文件是:000x_模型类 阅读全文

posted @ 2023-03-19 20:31 一先生94 阅读(215) 评论(0) 推荐(0) 编辑

django 迁移数据报错:django.db.utils.OperationalError: (1050, "Table 'xxx' already exists")
摘要:方法1: 登录数据库删除掉django创建数据表的所有数据内容、或者直接删掉所有表格。 DROP TABLE table_name; 因为MySQL中设置了foreign key关联,造成无法更新或删除数据。 SET FOREIGN_KEY_CHECKS = 0; 删除完成后设置 SET FOREI 阅读全文

posted @ 2023-03-18 08:38 一先生94 阅读(552) 评论(0) 推荐(0) 编辑

Django date__range([start,end])其中不包括end时间
摘要:# date__range([start,end]) # 不包括end时间,需转换最后的截止时间 from datetime import datetime, timedelta new_end = end + timedelta(days=1) obj.filter(tm__range=[star 阅读全文

posted @ 2023-02-17 22:47 一先生94 阅读(48) 评论(0) 推荐(0) 编辑

Django中models的字段
摘要:常见的field类型: 1.AutoField 自增字段,它是一个根据ID自增长的IntegerField字段,通常不用自己设置,如果没有设置主键,django会自动添加它为主键字段 2.CharField(max_length=none[, **options]) 一个字符串字段,必须有一个最大长 阅读全文

posted @ 2023-01-02 09:55 一先生94 阅读(131) 评论(0) 推荐(0) 编辑

Django中关于Manager的使用
摘要:首先介绍一下 manager 的使用场景,比如我们有一些表级别的,需要重复使用的功能,都可以使用 manager 来实现。 比如我们在前面的笔记中介绍的 model 的 create()、update() 等方法,Blog.objects.create() 中前面的 objects 就是一种 man 阅读全文

posted @ 2023-01-01 10:41 一先生94 阅读(85) 评论(0) 推荐(0) 编辑

在DJango中使用模型类时,出现一个DoesNotExist
摘要:在使用Django去查询数据库时,如果不存在,会抛出一个异常。 try: order = Order.objects.get(order_number=order_number) if order.order_status > 1: return HttpResponse("fail") excep 阅读全文

posted @ 2022-09-06 12:39 一先生94 阅读(272) 评论(0) 推荐(0) 编辑

Django中_meta的部分用法
摘要:model.UserInfo._meta.app_label#获取该类所在app的app名称 model.UserInfo._meta.model_name#获取该类对应表名(字符串类型) model.UserInfo._meta.get_field(‘username’)#获取该类内指定字段信息( 阅读全文

posted @ 2022-08-05 11:56 一先生94 阅读(35) 评论(0) 推荐(0) 编辑

ORM中多对多添加问题。
摘要:这个问题,自己花了一小段时间才真正搞明白。这里记录下。 首先创建模型类。 1 from django.db import models 2 3 # Create your models here. 4 class Clas(models.Model): 5 name = models.CharFie 阅读全文

posted @ 2022-08-05 10:58 一先生94 阅读(93) 评论(0) 推荐(0) 编辑

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示