創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!
創(chuàng)新互聯(lián)公司基于分布式IDC數(shù)據(jù)中心構(gòu)建的平臺(tái)為眾多戶提供溫江服務(wù)器租用 四川大帶寬租用 成都機(jī)柜租用 成都服務(wù)器租用。這篇文章主要介紹關(guān)于Django中ORM之增的多種方式,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
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、一對(duì)多的信息的創(chuàng)建
方式一:
#獲取出版社對(duì)象publish_obj=Publish.objects.get(id=4) #將出版社的對(duì)象綁定到書籍的記錄中Book.objects.create( title="python", price=48.00, publication_date="2017-07-12", publish=publish_obj, )
方式二:
#直接把出版社的id號(hào)插入到書籍的記錄中Book.objects.create( title="python", price=48.00, publish_id=2, publication_date="2017-06-18", )
4、多對(duì)多信息的創(chuàng)建
為一本書添加多個(gè)作者
author1=Author.objects.get(id=1)#獲取id號(hào)為1的作者對(duì)象 author2=Author.objects.filter(name="tom")#獲取名字為"tom"的作者對(duì)象 book1=Book.objects.get(id=2)#獲取id號(hào)為2的書籍對(duì)象 book1.authors.add(author1,author2)#為書籍對(duì)象添加多個(gè)作者對(duì)象
也可以用這種方式:
book1.authors.add(*[author1,author2])#為書籍對(duì)象添加作者對(duì)象的列表 book1.authors.remove(*[author1,author2])#刪除指定書籍的所有作者
為一個(gè)作者添加多本書
author_obj = Author.objects.filter(name="jerry")#獲取名字為"jerry"的作者對(duì)象 book_obj=Book.objects.filter(id__gt=3)#獲取id大于3的書籍對(duì)象集合 author_obj.book_set.add(*book_obj)#為作者對(duì)象添加書籍對(duì)象集合 author_obj.book_set.remove(*book_obj)#刪除指定作者對(duì)象所有的書籍
手動(dòng)創(chuàng)建多對(duì)多的作者與書籍信息表
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的作者對(duì)象 book_obj=models.Book.objects.filter(id=4)[0]#獲取Book表中id為4的書籍對(duì)象
方式一:
obj1=Book2Author.objects.create(author=author_obj,book=book_obj) obj1.save()
方式二:
obj2=Book2Author(author=author_obj,book=book_obj) obj2.save()
以上是關(guān)于Django中ORM之增的多種方式的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!