Django中的ORM之增:
1、使用create方式
方式一:
Publish.objects.create("name"="人民出版社",city="北京"}
方式二:
Publish.objects.create(**{"name":"文艺出版社","city":"上海"}}
2、使用save方式
方式一:
book1=Book(title="python",price="88",publish_id="1",publication_date="2017-06-18") book1.save()
方式二:
author1=Author(name="jerry") author1.save()
3、一对多的信息的创建
方式一:
#获取出版社对象publish_obj=Publish.objects.get(id=4) #将出版社的对象绑定到书籍的记录中Book.objects.create( title="python", price=48.00, publication_date="2017-07-12", publish=publish_obj, )
方式二:
#直接把出版社的id号插入到书籍的记录中Book.objects.create( title="python", price=48.00, publish_id=2, publication_date="2017-06-18", )
4、多对多信息的创建
为一本书添加多个作者
author1=Author.objects.get(id=1)#获取id号为1的作者对象 author2=Author.objects.filter(name="tom")#获取名字为"tom"的作者对象 book1=Book.objects.get(id=2)#获取id号为2的书籍对象 book1.authors.add(author1,author2)#为书籍对象添加多个作者对象
也可以用这种方式:
book1.authors.add(*[author1,author2])#为书籍对象添加作者对象的列表 book1.authors.remove(*[author1,author2])#删除指定书籍的所有作者
为一个作者添加多本书
author_obj = Author.objects.filter(name="jerry")#获取名字为"jerry"的作者对象 book_obj=Book.objects.filter(id__gt=3)#获取id大于3的书籍对象集合 author_obj.book_set.add(*book_obj)#为作者对象添加书籍对象集合 author_obj.book_set.remove(*book_obj)#删除指定作者对象所有的书籍
手动创建多对多的作者与书籍信息表
class Book2Author(models.Models): author=models.ForeignKey("Author")#为作者指定Author这张表做为外键 book=models.ForeignKey("Book")#为书籍指定Book这张表做为外键 author_obj=models.Author.objects.filter(id=3)[0]#获取Author表中id为3的作者对象 book_obj=models.Book.objects.filter(id=4)[0]#获取Book表中id为4的书籍对象
方式一:
obj1=Book2Author.objects.create(author=author_obj,book=book_obj) obj1.save()
方式二:
obj2=Book2Author(author=author_obj,book=book_obj) obj2.save()
更多Python知识,请关注:Python自学网!!
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!