django model 查询 笔记二 :多对多查询


# -*- coding:utf-8 -*-
   # 没法贴链接,参考自 CSDN:shangliuyan,好像没法贴链接,打出名字特此感谢,如有问题请留
from django.db import models


# 主表
class Author(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=40)
    email = models.EmailField()


# 从表
class Book(models.Model):
    title = models.CharField(max_length=200)
    authors = models.ManyToManyField(Author)

# 从表查主表
b = Book.objects.get(id=50)
b.authors.all()
b.authors.filter(first_name='Adam')

# 主表查从表
a = Author.objects.get(id=1)
a.book_set.all()

# 添加对象
a = Author.objects.get(id=1)
b = Book.objects.get(id=50)
b.authors.add(a)

# 删除对象
a = Author.objects.get(id=1)  
b = Book.objects.get(id=50)  
b.authors.remove(a) 或者 b.authors.filter(id=1).delete()

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM