Django 操作数据库model(增删改查)

本文介绍了如何在Django中使用Model进行数据库的基本操作,包括添加、删除、更新和查询数据的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、先配置两行代码

import django,os
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'dj_test.settings') #指定一下Django的文件配置在哪里
django.setup() #单独运行的话指定一下

二、增删改查代码

增
c_obj = Category.objects.create(name="Mysql")#新增数据  第一种方式
obj = Category(name='Oracle')#新增数据  第二种方式,实例化后保存一下
obj.save()
查询  ---> 单表查询
Category.objects.all()#查询所有的数据
obj = Category.objects.get(id=1) #获取一条的数据
obj = Category.objects.get(name="Mysql")#获取一条的数据

Category.objects.all().order_by("create_time")#排序 对个字段继续添加 ""就行

obj = Category.objects.get(id__gt=1)#大于
obj = Category.objects.get(id__lt=1)#小于
obj = Category.objects.get(id__gte=1)#大于等于
obj = Category.objects.get(id__lte=1)#小于等于

data = Category.objects.filter(id__gte=1,name="首页") #获取多条数据
print(data.first()) #取到第一条数据
print(data.last())#取到最后一条数据

Category.objects.filter(name__endswith='xx')#以什么结尾 xx
Category.objects.filter(name__startswith='xx')#以什么开头 xx
Category.objects.exclude(name="首页").filter(id__gte=1) #不等于exclude排除
Category.objects.filter(name__startswith='李').exclude(sex="女")#连用条件
print(Category.objects.filter(name__contains='L') )#包含
print(Category.objects.filter(name__icontains='l'))#不区分大小写包含
print(Category.objects.filter(name__in=['首页','Mysql','python']))
修改
Category.objects.update(is_delete=True)#修改全表

obj = Category.objects.get(id=1)#改一条(某条)数据的
obj.is_delete = False
obj.save()

Category.objects.filter(id__in=[2,3,4]).update(is_delete=False)
删除
Category.objects.all().delete()#删除全表

obj = Category.objects.get(id=1)#删除某条数据
obj.delete()
obj.save()

Category.objects.filter(id__in=[2,3,4]).delete(is_delete=False)
多表  1对多查询
c_obj = Category.objects.get(id=1) # 1->多的查询

print(c_obj.article_set.count()) #取它的数量
print(c_obj.article_set.all())   #取它的全部


#多
article = Article.objects.get(id=1)
print(article.category.name)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值