創新互聯公司專業為企業提供酒泉網站建設、酒泉做網站、酒泉網站設計、酒泉網站制作等企業網站建設、網頁設計與制作、酒泉企業網站模板建站服務,十年酒泉做網站經驗,不只是建網站,更提供有價值的思路和整體網絡服務。
from django.db import models
# Create your models here.
class Publisher(models.Model):
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=64,null=False,unique=True)
def __str__(self):
return "publisher_name:{}".format(self.name)
class Book(models.Model):
id = models.AutoField(primary_key=True)
title = models.CharField(max_length=128,null=False)
publisher = models.ForeignKey(to=Publisher,related_name="books")
def __str__(self):
return "book_title:{}".format(self.title)
class Author(models.Model):
id = models.AutoField(primary_key=True)
name = models.CharField(max_length=16,null=False)
book = models.ManyToManyField(to="Book")
def __str__(self):
return "author_name:{}".format(self.name)
import os
if __name__ == '__main__':
#加載Django項目的配置信息
os.environ.setdefault("DJANGO_SETTINGS_MODULE","testinclude.settings")
#導入Django,并啟動Django項目
import django
django.setup()
from ormtest import models
#多對多查詢
#查詢作者(小白),寫過的所有書有那些
author_obj = models.Author.objects.get(name="小白")
print(author_obj)
author_obj_books = author_obj.book.all()
print(author_obj_books)
#1.create(為小白作者對象創建一本書)
#首先:在book表中創建一本書,并指定相應的出版社
#然后:在作者和書的多聯多系表中,自動添加一條關聯記錄
author_obj.book.create(title="zabbix從入門到精通",publisher_id=3)
#2.add(為小白作者,添加一本書(網絡基礎原理))
book_obj = models.Book.objects.get(title="網絡基礎原理")
author_obj.book.add(book_obj)
#3.remove(為作者小白,刪除一本書《網絡基礎原理》)
#1、為作者小白,刪除一本書<網絡基礎原理>
book_obj = models.Book.objects.get(title="網絡基礎原理")
author_obj.book.remove(book_obj)
#為作者小白,刪除一本書,書的id為4
author_obj.book.remove(4)
#4.clear(把作者為小白的關聯的書,全部清空刪除)
author_obj.book.clear()
當前名稱:Django之多對多查詢與操作方法
網頁地址:http://m.newbst.com/article44/pjdghe.html
成都網站建設公司_創新互聯,為您提供云服務器、搜索引擎優化、面包屑導航、企業網站制作、商城網站、電子商務
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯