ManyToMany 字段的使用
2019-11-05 18:05
375 查看
创建一个经典的多对多关系:一本书可以有多个作者,一个作者可以有多本书(如下,csdn复制的图片)
当进行数据迁移时,会生成三张表,了解就好
1,查询数据的操作 :
1.一本书的所有作者
b = Book.objects.get(id=1)
b.author.all()
2.一个作者的所有书籍:
a = Author.objects.get(id=1)
a.book_set.all()
2,添加数据的操作 :
a = Auther.objects.get(id=1)
b = Book.objects.get(id=3) #获取对象b
b.authors.add(a) #将对象传b (如果是删除使用b.authors.remove()a)
如果关联对象有多个时,应该先把多个对象分别添加进去:
a = Auther.objects.filter(id__gt=4)
b = Book.objects.get(id=1)
for obj in a:
b.authors.add(obj)
重点部分:使用序列化器进行添加数据(不想敲,直接上图)
相关文章推荐
- 【11-17】【博睿项目】has_and_belongs_to_many【连接表不使用默认的id】
- hibernate one-to-many/many-to-one 使用中间表/使用join 标签
- Django的ManyToManyField(多对多)的使用以及through的作用
- 关于为什么单向一对多(one-to-many)要使用关联表的再思考
- 使用MJRefresh,Too many arguments to function call, expected 0, have *
- django ManyToMany 使用的注意事项
- Django 多表关联 存储 使用方法详解 ManyToManyField save
- django中ManyToManyField字段的添加操作——注意!!
- spring和hibernate使用注解时出现 OneToMany.orphanRemoval()Z
- xcode6 使用MJRefresh,Too many arguments to function call, expected 0, have *
- Hibernate中ManyToOne,OneToMany,OneToOne的使用例
- Listagg函数转换nvarchar2类型字段结果为空,需使用to_char函数转换字段,然后再使用Listagg
- ManytoMany字段属性through和through_fields
- 在oracel表中的一个datatime字段上建了索引,然后使用to_char函数进行检索,能否使用该索引?
- opencv实例matching_to_many_images不能使用surf解决
- Hibernate @Any 及 @ManyToAny 使用教程
- 使用SDWebImage时 报错Too many arguments to function call, expected 0, have *
- IOS-8-Xcode6 使用MJRefresh报错:Too many arguments to function call, expected 0, have 3
- 使用session.createFilter()完成one-to-many关联关系的集合过滤
- hibernate使用摘要(many-to-many N+1问题)