Django查询,修改对象 如何从数据库的queryset对象中提取值?

方法

1.查

用filter查不到他不会报错,但是用get查不到他会报错
下边这个代码,就是根据labelfilerelative这个参数与数据库的datalabel参数匹配查找对应的值

item = TCMdatabase.objects.filter(datalabel='/media/1900001/label/cb4333f9-858e-11eb-813b-e86a6468dcd8.txt')
<QuerySet [<TCMdatabase: 1>]>  
--------------------------------------------------------------------------------------


item = TCMdatabase.objects.filter(datalabel='/media/1900001/label/cb4333f9-858e-11eb-813b-e86a6468dcd8.txt').values()
<QuerySet [{'datasetid': 1, 'datalabel': '/media/1900001/label/cb4333f9-858e-11eb-813b-e86a6468dcd8.txt', 'datatrain': '/media/1900001/train/cb435af4-858e-11eb-a959-e86a6468dcd8.txt', 'dataTeacher_id': 1}]>
--------------------------------------------------------------------------------------


item = TCMdatabase.objects.filter(datalabel='/media/1900001/label/cb4333f9-858e-11eb-813b-e86a6468dcd8.txt').values()[0]
{'datasetid': 1, 'datalabel': '/media/1900001/label/cb4333f9-858e-11eb-813b-e86a6468dcd8.txt', 'datatrain': '/media/1900001/train/cb435af4-858e-11eb-a959-e86a6468dcd8.txt', 'dataTeacher_id': 1}
--------------------------------------------------------------------------------------

item = TCMdatabase.objects.filter(datalabel=labelfilerelative).values()[0]
datasetid = item.get('datasetid')
item.get('datasetid')
1

完整代码是

datasetid = TCMdatabase.objects.filter(datatrain=trainfilerelative).values()[0].get('datasetid')

2. 修改

  • 这个是根据teacher_id 查询已经有的数据库相关内容
  • tea_data 就是你查到的那条数据的对象
  • 对这条对象的postTime 字段进行添加数据,修改,记得保存 save()
location = teacher_id 
        tea_data = Teacher.objects.get(id=teacher_id)
        tea_data.postTime = datetime.datetime.now()
        tea_data.save()

具体内容看我的笔记

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

slience_me

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值