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的正向反向操作
Django orm的正向反向操作



本文转自 kesungang 51CTO博客,原文链接:http://blog.51cto.com/sgk2011/2067737,如需转载请自行联系原作者

相关文章
|
4月前
|
关系型数据库 MySQL 数据库连接
使用Django框架完成用户的增删改查操作
使用Django框架完成用户的增删改查操作
41 1
|
7月前
|
SQL 关系型数据库 MySQL
Django入门ORM(Django操作MySQL) 专题一
Django入门ORM(Django操作MySQL) 专题一
|
13天前
|
Oracle 关系型数据库 MySQL
Django框架ORM操作(二)
Django框架ORM操作(二)
|
13天前
|
SQL 存储 前端开发
Django框架ORM操作(一)
Django框架ORM操作(一)
Django框架ORM操作(一)
|
16天前
|
SQL 缓存 数据库
在Python Web开发过程中:数据库与缓存,如何使用ORM(例如Django ORM)执行查询并优化查询性能?
在Python Web开发中,使用ORM如Django ORM能简化数据库操作。为了优化查询性能,可以:选择合适索引,避免N+1查询(利用`select_related`和`prefetch_related`),批量读取数据(`iterator()`),使用缓存,分页查询,适时使用原生SQL,优化数据库配置,定期优化数据库并监控性能。这些策略能提升响应速度和用户体验。
18 0
|
5月前
|
SQL 数据库 开发者
Python Web 开发: 什么是 Django ORM?如何使用它进行数据库操作?
Python Web 开发: 什么是 Django ORM?如何使用它进行数据库操作?
|
26天前
|
SQL 缓存 数据库
Django ORM的性能优化:高效处理大量数据
【4月更文挑战第15天】本文介绍了优化Django ORM性能的六大技巧:1) 使用批量操作如bulk_create和bulk_update;2) 利用prefetch_related和select_related减少查询次数;3) 为常用字段添加索引;4) 优化数据库查询,避免循环查询;5) 使用缓存提升频繁查询性能;6) 在必要时使用原生SQL。这些策略能帮助处理大量数据时提升Django ORM的效率。
|
26天前
|
SQL 自然语言处理 数据库连接
Django ORM的魔力:简化数据库操作与迁移
【4月更文挑战第15天】Django ORM是Django框架的关键部分,提供了一种高级的面向对象方式与数据库交互,简化了手动SQL操作。通过定义Python数据模型,开发者能轻松创建数据库表结构,使用ORM执行查询、添加、修改和删除数据。Django ORM还自动化处理数据库连接、事务和数据类型转换。当模型变化时,Django的迁移工具帮助管理数据库结构的更新。通过这种方式,Django ORM促进了高效、专注于业务逻辑的Web开发。
|
27天前
|
SQL API 数据库
python的Django ORM框架深度解析
【4月更文挑战第14天】在Python的Web开发领域,Django无疑是一个备受推崇的框架。它提供了许多强大的工具和功能,使得开发者能够高效、快速地构建出高质量的Web应用。而在Django的众多特性中,ORM(对象关系映射)框架更是其不可或缺的一部分。本文将详细解析Django ORM框架,帮助读者更好地理解和使用它。
|
2月前
|
SQL API 数据库
一篇文章带你了解Django ORM操作
一篇文章带你了解Django ORM操作
23 0