本网站可以通过分类标签帮助你快速筛选出你想看的文章,记住地址:www.Facec.cc

Django 多对多关系取消关联

引言:

在现实中的问题就是, 一本书有多个作者, 一个作者可以出版多本书, 假定西游记的作者中想添加老王, 或者在西游记的众多撰写作者中去除一人...

发现网上都是
book_obj.author.add(*author1)
为啥我亲自测试带 * 会报错!!!

解决

model模型

class Book(models.Model):
    author = models.ManyToMany(to='author', relate_name='author')
	"""
	...字段
	"""
    
class author(models.Model):
    """
    ...字段
    """

基本方法

# 增、删、改
add() # 增加
remove() # 删除表,只删一条数据
clear() # 清空表, 把所有关系的表全部清空 例如 book_obj.author.clear() 表示把当前书籍对象的所有作者全部清空

book_obj = models.Book.objects.create(
            title="西游记",
            price=123,
)

author1 = author.objects.get(id=1)


book_obj.author.add(author1)
# save()方法保存
book_obj.save()

book_obj = models.Book.objects.create(
            title="西游记",
            price=123,
)
author1 = author.objects.get(id=1)
book_obj.author.remove(author1)
# save()方法保存
book_obj.save()

# django  

评论