Django orm的正向反向操作
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django orm的正向反向操作相关的知识,希望对你有一定的参考价值。
数据表的正反向操作
通过values 和values_list来操作的
数据表代码
class Utype(models.Model):
title = models.CharField(max_length=32)
# ucap = models.ForeignKey(‘Ubumen‘)
class Uinfo(models.Model):
name = models.CharField(max_length=32)
age = models.IntegerField()
ut = models.ForeignKey(‘Utype‘)
url配置
url(r‘^test.html/‘, views.test),
views函数中的test函数
#
#正向查询
# ZX_result = models.Uinfo.objects.all().first()
# models.Uinfo.objects.filter(id__gt=6).delete()
# ZX_result = models.Uinfo.objects.values(‘name‘,‘ut_id‘) #显示结果为6个,因为Uinfo里面就有6个,这个和left join一样,谁在前面以谁为准
# ZX_result = models.Uinfo.objects.values(‘name‘,‘ut__id‘,‘ut__title‘) #跨表查询
#ZX_result = models.Uinfo.objects.values_list(‘name‘,‘ut__title‘)# 元祖显示
#print(ZX_result)
#反向查找
# FX_result=models.Utype.objects.all().first()#通过print(FX_result.id)来看结果
# FX_lianbiao = FX_result.uinfo_set.all() #通过数据表小写+单下划线+set来达到反向查找
# print(FX_lianbiao[0].id)
FX_result = models.Utype.objects.values_list(‘id‘,‘title‘,‘uinfo__age‘) #反向通过表明小写+双下划线 来去跨表的值
print(FX_result)
return HttpResponse(‘.....‘)
其他操作
以上是关于Django orm的正向反向操作的主要内容,如果未能解决你的问题,请参考以下文章