django中模型的简单操作

本文介绍了Django框架中模型的基本操作,包括如何增加、查找、删除和修改数据库中的对象。

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

class Person_Tbl(models.Model):
    '''
    定义人物类
    '''
    name = models.CharField(max_length=254,default='')          #姓名
    sex =  models.CharField(max_length=125,default='')          #性别
    height = models.IntegerField(default=170)                   #身高
    birthday = models.DateTimeField(auto_now_add=True)          #生日
    phone = models.BigIntegerField(default=0)                   #电话   
    info=models.TextField(default='')                           #基本信息

一、增加一个对象

(1)先创建一个对象,然后执行save
 person = Person_Tbl()             /*只是创建,并没有保存到数据库中*/
 person.name = name
 person.sex =  sex
 person.height = height
 person.birthday = birthday
 person.phone = phone
 person.info = text
 person.save()                    /*真正保存到数据库中*/

(2)直接使用create()
 person.objects.create(name=name, sex=sex, height=height, birthday=birthday,phone=phone,text=text)

二、查找一个对象

(1)获取表中的全部对象
all_person = Person_Tbl.objects.all()

(2)使用filter选择符合条件的对象集合
person = Person_Tbl.objects.filter(name=name)

(3)使用get选择符合条件的对象,有且存在一个对象的时候正确,否则会返回异常
person = Person_Tbl.objects.get(name=name)

(4)联合查询
person = Person_Tbl.objects.filter(name=name, sex=sex) #返回与查询字段name和sex都相同的对象
person = Person_Tbl.objects.filter(name=name).exclude(sex=sex) #返回与查询字段name相同,但是与查询字段sex不同的对象
person = Person_Tbl.objects.filter(name=name).values('name')#返回与查询字段name相同的对象,但是只返回name字段
person = Person_Tbl.objects.filter(name=name).values_list('name')#返回与查询字段name相同对象,但是只返回name字段
person = Person_Tbl.objects.filter(name=name).distinct()#返回与查询字段name相同的对象,并去除重复
person = Person_Tbl.objects.filter(name=name).order_by('name')#返回与查询字段name相同对象,以name进行排序
person = ConfigTbl.objects.filter(~Q(name = name) #返回与查询字段name不相同对象

三、删除一个对象

(1)先取出要删除的对象,然后使用delete方法
person = Person_Tbl.objects.filter(name=name)
person = person[0]
person.delete()
注意:使用filter的时候返回的QuerySet集合,所以需要选取出集合的对象

person = Person_Tbl.objects.get(name=name)
person.delete()
注意:使用get的时候返回的是Person_Tbl的一个对象

(2)直接delete()
person = Person_Tbl.objects.filter(name=name).delete()

四、修改一个对象

(1)获取对象,然后修改,最后save()person = Person_Tbl.objects.filter(name=name)
cur_person = person[0]
cur_person.name = name
cur_person.height = 170
cur_person.save()

person = Person_Tbl.objects.get(name=name)
person.name = name
person.height = 170
person.save()

(2)使用update()
person = Person_Tbl.objects.filter(name=name).update(name=name, height=170)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值