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

對(duì)django2.0 關(guān)聯(lián)表的必填on_delete參數(shù)的含義解析

 更新時(shí)間:2019年08月09日 09:23:55   作者:buxianghejiu  
今天小編就為大家分享一篇對(duì)django2.0 關(guān)聯(lián)表的必填on_delete參數(shù)的含義解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

一對(duì)多(ForeignKey)

class ForeignKey(ForeignObject):
  def __init__(self, to, on_delete, related_name=None, related_query_name=None,
         limit_choices_to=None, parent_link=False, to_field=None,
         db_constraint=True, **kwargs):
    super().__init__(to, on_delete, from_fields=['self'], to_fields=[to_field], **kwargs)

一對(duì)一(OneToOneField)

class OneToOneField(ForeignKey):
  def __init__(self, to, on_delete, to_field=None, **kwargs):
    kwargs['unique'] = True
    super().__init__(to, on_delete, to_field=to_field, **kwargs)

從上面外鍵(ForeignKey)和一對(duì)一(OneToOneField)的參數(shù)中可以看出,都有on_delete參數(shù),而 django 升級(jí)到2.0之后,表與表之間關(guān)聯(lián)的時(shí)候,必須要寫on_delete參數(shù),否則會(huì)報(bào)異常:

TypeError: __init__() missing 1 required positional argument: 'on_delete'

因此,整理一下on_delete參數(shù)的各個(gè)值的含義:

on_delete=None,        # 刪除關(guān)聯(lián)表中的數(shù)據(jù)時(shí),當(dāng)前表與其關(guān)聯(lián)的field的行為
on_delete=models.CASCADE,   # 刪除關(guān)聯(lián)數(shù)據(jù),與之關(guān)聯(lián)也刪除
on_delete=models.DO_NOTHING, # 刪除關(guān)聯(lián)數(shù)據(jù),什么也不做
on_delete=models.PROTECT,   # 刪除關(guān)聯(lián)數(shù)據(jù),引發(fā)錯(cuò)誤ProtectedError
# models.ForeignKey('關(guān)聯(lián)表', on_delete=models.SET_NULL, blank=True, null=True)
on_delete=models.SET_NULL,  # 刪除關(guān)聯(lián)數(shù)據(jù),與之關(guān)聯(lián)的值設(shè)置為null(前提FK字段需要設(shè)置為可空,一對(duì)一同理)
# models.ForeignKey('關(guān)聯(lián)表', on_delete=models.SET_DEFAULT, default='默認(rèn)值')
on_delete=models.SET_DEFAULT, # 刪除關(guān)聯(lián)數(shù)據(jù),與之關(guān)聯(lián)的值設(shè)置為默認(rèn)值(前提FK字段需要設(shè)置默認(rèn)值,一對(duì)一同理)
on_delete=models.SET,     # 刪除關(guān)聯(lián)數(shù)據(jù),
 a. 與之關(guān)聯(lián)的值設(shè)置為指定值,設(shè)置:models.SET(值)
 b. 與之關(guān)聯(lián)的值設(shè)置為可執(zhí)行對(duì)象的返回值,設(shè)置:models.SET(可執(zhí)行對(duì)象)

多對(duì)多(ManyToManyField)

class ManyToManyField(RelatedField):
  def __init__(self, to, related_name=None, related_query_name=None,
         limit_choices_to=None, symmetrical=None, through=None,
         through_fields=None, db_constraint=True, db_table=None,
         swappable=True, **kwargs):
    super().__init__(**kwargs)

因?yàn)槎鄬?duì)多(ManyToManyField)沒有 on_delete 參數(shù),所以略過不提.

以上這篇對(duì)django2.0 關(guān)聯(lián)表的必填on_delete參數(shù)的含義解析就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 深入探究Django中的Session與Cookie

    深入探究Django中的Session與Cookie

    周末小閑在家研究了下django的 cookie 和 session,所以下面這篇文章主要給大家深入地介紹了關(guān)于Django中Session與Cookie的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面跟著小編來一起看看吧。
    2017-07-07
  • PyQt5+Caffe+Opencv搭建人臉識(shí)別登錄界面

    PyQt5+Caffe+Opencv搭建人臉識(shí)別登錄界面

    這篇文章主要為大家詳細(xì)介紹了PyQt5+Caffe+Opencv搭建人臉識(shí)別登錄界面,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • 解決pygal.style的LightColorizedStyle參數(shù)問題

    解決pygal.style的LightColorizedStyle參數(shù)問題

    這篇文章主要介紹了解決pygal.style的LightColorizedStyle參數(shù)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • python學(xué)習(xí)之編寫查詢ip程序

    python學(xué)習(xí)之編寫查詢ip程序

    這篇文章主要介紹了python學(xué)習(xí)之編寫查詢ip程序 ,需要的朋友可以參考下
    2016-02-02
  • python中的sys模塊詳解

    python中的sys模塊詳解

    sys模塊是與python解釋器交互的一個(gè)接口,sys 模塊提供了許多函數(shù)和變量來處理 Python 運(yùn)行時(shí)環(huán)境的不同部分,這篇文章主要介紹了python之sys模塊詳解,需要的朋友可以參考下
    2022-11-11
  • 使用Python去除字符串中某個(gè)字符的多種實(shí)現(xiàn)方式比較

    使用Python去除字符串中某個(gè)字符的多種實(shí)現(xiàn)方式比較

    python中字符串是不可變的,所以無法直接刪除字符串之間的特定字符,下面這篇文章主要給大家介紹了關(guān)于使用Python去除字符串中某個(gè)字符的多種實(shí)現(xiàn)方式比較的相關(guān)資料,需要的朋友可以參考下
    2022-06-06
  • Celery批量異步調(diào)用任務(wù)一直等待結(jié)果問題

    Celery批量異步調(diào)用任務(wù)一直等待結(jié)果問題

    這篇文章主要介紹了Celery批量異步調(diào)用任務(wù)一直等待結(jié)果問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 查找適用于matplotlib的中文字體名稱與實(shí)際文件名對(duì)應(yīng)關(guān)系的方法

    查找適用于matplotlib的中文字體名稱與實(shí)際文件名對(duì)應(yīng)關(guān)系的方法

    這篇文章主要介紹了查找適用于matplotlib的中文字體名稱與實(shí)際文件名對(duì)應(yīng)關(guān)系的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Python模擬百度自動(dòng)輸入搜索功能的實(shí)例

    Python模擬百度自動(dòng)輸入搜索功能的實(shí)例

    今天小編就為大家分享一篇Python模擬百度自動(dòng)輸入搜索功能的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • Python中的SOLID原則實(shí)例詳解

    Python中的SOLID原則實(shí)例詳解

    SOLID原則是由Robert C. Martin提出的以首字母縮寫命名的編碼準(zhǔn)則,它代表了五種不同的編碼習(xí)慣,下面這篇文章主要給大家介紹了關(guān)于Python中SOLID原則的相關(guān)資料,需要的朋友可以參考下
    2023-02-02

最新評(píng)論

广河县| 漳浦县| 宜州市| 岢岚县| 宁都县| 泸溪县| 南宁市| 绵阳市| 定边县| 化隆| 静安区| 邵武市| 东海县| 河东区| 航空| 马关县| 皋兰县| 中宁县| 南丰县| 文成县| 宁阳县| 承德市| 新源县| 扎囊县| 新密市| 漠河县| 昌江| 临高县| 五大连池市| 临沂市| 阳曲县| 大竹县| 文登市| 台湾省| 临高县| 丰原市| 宜丰县| 沂源县| 隆尧县| 蒙城县| 龙门县|