亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Django生成數據庫及添加用戶報錯解決方案

發布時間:2020-10-16 10:24:02 來源:腳本之家 閱讀:301 作者:陳彥斌 欄目:開發技術

Django生成數據庫表時報錯 __init__() missing 1 required positional argument: 'on_delete'

原因:

  在django2.0后,定義外鍵和一對一關系的時候需要加上on_delete選項,此參數為了避免兩個表里的數據不一致問題,不然會報錯

例如:

  owner=models.ForeignKey(UserProfile)--->報錯

  owner=models.ForeignKey(UserProfile,on_delete=models.CASCADE) --在老版本這個參數(models.CASCADE)是默認值

參數說明:

  on_delete有CASCADE、PROTECT、SET_NULL、SET_DEFAULT、SET()五個可選的值

    CASCADE:級聯刪除。

    PROTECT:報完整性錯誤。

    SET_NULL:將外鍵設置為null,前提是允許為null。

    SET_DEFAULT:將外鍵設置為一個默認值

    SET():調用外面的值,可以是一個函數

    注:一般使用CASCADE就可以了。

在使用Django添加用戶時出現報錯:

 django.db.utils.IntegrityError: (1452, 'Cannot add or update a child row: a foreign key constraint fai
 ls (`cms`.`app01_book_author`, CONSTRAINT `app01_book_author_book_id_df0ca405_fk_app01_book_id` FOREIG
 N KEY (`book_id`) REFERENCES `app01_book` (`id`))')
 [31/Mar/2019 21:20:45] "GET /addbook/ HTTP/1.1" 500 216210

解決辦法,需要在setting.py文件的databases中取消外鍵檢查:

1 DATABASES = {

 DATABASES = {
   'default': {
     'ENGINE': 'django.db.backends.mysql',
     'NAME': 'cms', # 你的數據庫名稱
     'USER': 'root', # 你的數據庫用戶名
     'PASSWORD': '123456', # 你的數據庫密碼
     'HOST': '', # 你的數據庫主機,留空默認為localhost
     'PORT': '3306', # 你的數據庫端口
     'OPTIONS': {
       "init_command": "SET foreign_key_checks = 0;", # 取消外鍵檢查
     }
   }
 }

問題解決!!!

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

威海市| 漳浦县| 六枝特区| 阿勒泰市| 浮山县| 曲靖市| 阳山县| 德清县| 徐水县| 红河县| 抚州市| 襄汾县| 龙南县| 崇信县| 庆安县| 三门峡市| 临泉县| 罗甸县| 高邑县| 岑巩县| 鄂托克旗| 安阳县| 汉川市| 泽库县| 大埔区| 景泰县| 卓资县| 晋州市| 杭锦旗| 琼结县| 汝南县| 吴江市| 桓仁| 乡城县| 绵阳市| 濮阳县| 陵水| 灵宝市| 财经| 宣恩县| 星子县|