django之表多對多查詢


 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) # 在這不再需要連表

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM