码迷,mamicode.com
首页 > 其他好文 > 详细

Django orm的正向反向操作

时间:2018-02-01 17:22:34      阅读:175      评论:0      收藏:0      [点我收藏+]

标签:left join   size   for   操作   char   UI   inf   ...   cap   

数据表的正反向操作

通过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的正向反向操作

标签:left join   size   for   操作   char   UI   inf   ...   cap   

原文地址:http://blog.51cto.com/sgk2011/2067737

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!