django之表多对多查询

摘要:
2name=models.CharField(max_length=32)34classGirl(models.Model):5nick=models.CharField(max_lngth=33)67classLove(models.Model):
 1 class Boy(models.Model):
 2     name = models.CharField(max_length=32)
 3     
 4 class Girl(models.Model):
 5     nick = models.CharField(max_length=32)
 6     
 7 class Love(models.Model):
 8     b = models.ForeignKey('Boy')
 9     g = models.ForeignKey('Girl')
10     
11 # 多对多连表查询  普通查询
12 love_list = Love.objects.filter(b__name='方少伟')
13 for row in love_list:
14     print(row.g.nick) # 在这还再需要连表
15     
16 # 多对多连表查询  直接连表查询完成
17 love_list = Love.objects.filter(b__name='方少伟').values('g__nick')  # love_list里面全是字典
18 for row in love_list:
19     print(row['g__nick']) # 在这不再需要连表
20     
21 # 多对多连表查询  直接连表查询完成
22 love_list = Love.objects.filter(b__name='方少伟').select_related('g') # love_list里面全是queryset对象
23 for row in love_list:
24     print(row.g.nick) # 在这不再需要连表

免责声明:文章转载自《django之表多对多查询》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇weblogic 升级bsu_Weblogic补丁升级之坑坑洼洼安卓xml文件中常见的问题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

C# Sql 触发器

触发器是一种特殊类型的存储过程,它不同于之前的我们介绍的存储过程。触发器主要是通过事件进行触发被自动调用执行的。而存储过程可以通过存储过程的名称被调用。 Ø 什么是触发器     触发器对表进行插入、更新、删除的时候会自动执行的特殊存储过程。触发器一般用在check约束更加复杂的约束上面。触发器和普通的存储过程的区别是:触发器是当对某一个表进行操作。诸如:...

文本框根据拼音自动匹配提示

    之前有提到过用jquery来实现文本框的自动匹配(http://hi.baidu.com/yunanwu/item/2a5aa13b1607fa26b3c0c522 ) 发现只能用汉字的匹配,又觉得吧平时在用百度谷歌的时候,输入拼音的时候也可以直接提示,就琢磨着自己实现一下这个功能(发现自己现在看到网页的功能,都要联想着自己去写了)。 关于拼音的...

某数据库管理软件离线注册分析

序列号  libcc.dll sub_1818810F0 4x4=16字节 通过10个字节的数据来生成的。 1. data[0] 和 data[1]必须分别为 `0x68` 和 `0x2A`。这两个字节为Navicat的标志数。 2. data[2]、data[3]和 data[4]可以是任意字节,你想设成什么都行。 3. data[5]和 data[6]...

html 复选框checkbox

统计选中复选框的个数 <html> <head> <title> </title> <script> function static_num() { document.getElementById("btnOperat...

SQL Server创建存储过程——动态SQL

简介: 存储过程(stored procedure)是一组为了完成特定功能的SQL语句集合,经编译后存储在服务器端的数据库中,利用存储过程可以加速SQL语句的执行。 自定义存储过程,由用户创建并能完成某一特定功能的存储过程,存储过程既可以有参数又有返回值,但是它与函数不同,存储过程的返回值只是指明执行是否成功, 存储过程并不能像函数那样被直接调用,只能利用...

Redis AOF重写

AOF 重写 AOF 持久化是通过保存被执行的写命令来记录数据库状态的,所以AOF文件的大小随着时间的流逝一定会越来越大;影响包括但不限于:对于Redis服务器,计算机的存储压力;AOF还原出数据库状态的时间增加; 为了解决AOF文件体积膨胀的问题,Redis提供了AOF重写功能:Redis服务器可以创建一个新的AOF文件来替代现有的AOF文件,新旧两个文...