最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

django 多對多表的創(chuàng)建和插入代碼實(shí)現(xiàn)

 更新時(shí)間:2019年09月09日 10:16:23   作者:信奉上帝的小和尚  
這篇文章主要介紹了django-多對多表的創(chuàng)建和插入代碼實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

這篇文章主要介紹了django-多對多表的創(chuàng)建和插入代碼實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

表的創(chuàng)建

# 作者和書籍之間的多對多關(guān)系  
class Author(models.Model):
  '''
  作者表
  '''
  nid = models.AutoField(primary_key=True)
  name = models.CharField(verbose_name='作者名稱',max_length=32)
  # 第一種方式直接在作者表中創(chuàng)建ManyToManyField字段(ORM會(huì)自動(dòng)幫我們創(chuàng)建第三張表推薦這種方式)
  author2books = models.ManyToManyField(to='Books')
class Books(models.Model):
  '''
  書籍名稱
  '''
  nid = models.AutoField(primary_key=True)
  title = models.CharField(verbose_name='書本名稱',max_length=32)
  pid = models.ForeignKey(verbose_name='出版社ID',to='Press',to_field='nid',on_delete=models.CASCADE)
# 第二鐘方式手動(dòng)創(chuàng)建第三張表
# class Books2Author(models.Model):
#   '''
#   書本作者對應(yīng)表
#   '''
#   nid = models.AutoField(primary_key=True)
#   aid = models.ForeignKey(verbose_name='作者ID',to='Author',to_field='nid')
#   bid = models.ForeignKey(verbose_name='書籍ID',to='Books',to_field='nid')

數(shù)據(jù)的添加

# 編輯作者
def edit_author(request):
  # 獲取作者ID 
  id = request.GET.get('id')
  # 獲取所有書籍
  books_lst = models.Books.objects.all()
  # 根據(jù)作者ID 獲取到作者對象
  author_info = models.Author.objects.filter(pk=id).first()
  if request.method == 'POST':
    # 獲取前端傳過來的作者新名稱
    name = request.POST.get('name')
    # 獲取前端傳遞過來的書籍
    book_lst = request.POST.getlist('books')
    # 根據(jù)新名稱,更新當(dāng)前名稱
    author_info.name = name
    # 保存數(shù)據(jù)
    author_info.save()
    # set方法會(huì)將當(dāng)前作者原先的書籍全部刪除,然后插入前端傳遞過來的書籍列表(參數(shù)為list類型)
    author_info.author2books.set(book_lst)
    # add方法會(huì)將前端傳遞過來書籍添加到 作者和書籍的對應(yīng)表中。如果插入重復(fù)記錄會(huì)報(bào)錯(cuò)(參數(shù)為單個(gè)元素,可以插入多個(gè))
    # author_info.author2books.add(*book_lst)
    return redirect('/author_lst/')
  return render(request,'edit_author.html',{'books_lst':books_lst,'author_info':author_info})

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Django多app路由分發(fā)(純后端)

    Django多app路由分發(fā)(純后端)

    本文主要介紹了Django多app路由分發(fā),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • Python3+SQLAlchemy+Sqlite3實(shí)現(xiàn)ORM教程

    Python3+SQLAlchemy+Sqlite3實(shí)現(xiàn)ORM教程

    這篇文章主要介紹了Python3+SQLAlchemy+Sqlite3實(shí)現(xiàn)ORM教程,需要的朋友可以參考下
    2021-02-02
  • 關(guān)于Django ForeignKey 反向查詢中filter和_set的效率對比詳解

    關(guān)于Django ForeignKey 反向查詢中filter和_set的效率對比詳解

    今天小編就為大家分享一篇關(guān)于Django ForeignKey 反向查詢中filter和_set的效率對比詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python使用matplotlib繪制圖形大全(曲線圖、條形圖、餅圖等)

    Python使用matplotlib繪制圖形大全(曲線圖、條形圖、餅圖等)

    matplotlib 是一個(gè)用于創(chuàng)建靜態(tài)、動(dòng)態(tài)和交互式可視化圖形的 Python 庫,它被廣泛用于數(shù)據(jù)可視化,并且可以與多種操作系統(tǒng)和圖形后端一起工作,本文給大家介紹了Python使用matplotlib繪制圖形大全,需要的朋友可以參考下
    2024-06-06
  • Python中os.system函數(shù)的用法詳解

    Python中os.system函數(shù)的用法詳解

    在 Python 的眾多模塊中,os模塊是一個(gè)功能強(qiáng)大的工具,它為開發(fā)者提供了與操作系統(tǒng)交互的接口,其中,os.system函數(shù)作為os模塊的一部分,扮演著重要的角色,本文給大家介紹了Python中os.system函數(shù)的用法,需要的朋友可以參考下
    2025-02-02
  • python實(shí)現(xiàn)多人聊天室

    python實(shí)現(xiàn)多人聊天室

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)多人聊天室,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-08-08
  • Python django實(shí)現(xiàn)簡單的郵件系統(tǒng)發(fā)送郵件功能

    Python django實(shí)現(xiàn)簡單的郵件系統(tǒng)發(fā)送郵件功能

    這篇文章主要介紹了Python django實(shí)現(xiàn)簡單的郵件系統(tǒng)發(fā)送郵件功能,結(jié)合實(shí)例形式分析了django發(fā)送郵件的實(shí)現(xiàn)技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2017-07-07
  • Python vtk讀取并顯示dicom文件示例

    Python vtk讀取并顯示dicom文件示例

    今天小編就為大家分享一篇Python vtk讀取并顯示dicom文件示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • python time模塊用法實(shí)例詳解

    python time模塊用法實(shí)例詳解

    這篇文章主要介紹了python中time模塊的用法,包括了各類時(shí)間函數(shù),需要的朋友可以參考下
    2014-09-09
  • Python報(bào)錯(cuò)KeyError: ‘missing_key‘的有效解決方法

    Python報(bào)錯(cuò)KeyError: ‘missing_key‘的有效解決方法

    在 Python 編程中,報(bào)錯(cuò)信息常常讓開發(fā)者感到困擾,其中,“KeyError: ‘missing_key’”是一個(gè)較為常見的報(bào)錯(cuò),它可能在各種數(shù)據(jù)處理和字典操作的場景中出現(xiàn),本文將深入探討這個(gè)報(bào)錯(cuò)的原因,并提供多種有效的解決方法,幫助開發(fā)者快速解決此類問題
    2024-10-10

最新評論

清远市| 乌拉特中旗| 蒙阴县| 阿拉尔市| 成都市| 博乐市| 连平县| 达拉特旗| 漳浦县| 南靖县| 建瓯市| 南丰县| 赞皇县| 丹巴县| 玉屏| 梨树县| 嘉禾县| 武穴市| 晋中市| 格尔木市| 剑阁县| 扎赉特旗| 连山| 若尔盖县| 鱼台县| 林口县| 礼泉县| 兴仁县| 庆城县| 泰安市| 汶上县| 菏泽市| 清丰县| 涞源县| 山丹县| 启东市| 洪泽县| 盖州市| 通化市| 石景山区| 犍为县|