国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

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

瀏覽:129日期:2024-09-21 14:21:50

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;', # 取消外鍵檢查 } } }

問題解決!!!

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

標簽: Django
相關文章:
主站蜘蛛池模板: 成人国产一区二区三区精品 | 日本一区二区三区在线 视频观看免费 | 国产精品亚洲成在人线 | 美女操男人 | 视频二区 中文字幕 欧美 | 国产成人爱片免费观看视频 | www.av视频在线观看 | 欧美国产在线观看 | 美女视频永久黄网站在线观看 | 在线天天干| 久夜色精品国产一区二区三区 | 99在线国产视频 | 99je全部都是精品视频在线 | 毛片大片免费看 | 国外免费一级 | 日韩中文字 | 欧美成人猛男性色生活 | 国产午夜免费视频片夜色 | 国产美女视频一区 | 18在线网站 | 欧美一级片免费 | 国产玖玖视频 | 亚洲视频在线观看一区 | 国产成人久久久精品一区二区三区 | 欧美毛片大全 | 久久久久久久国产精品毛片 | 免费看特级毛片 | 欧美一线不卡在线播放 | 视频一区二区在线 | 欧美日韩在线观看免费 | 男人使劲躁女人视频小v | 国产成人啪一区二区 | 亚洲男人的天堂在线视频 | 免费一区二区三区在线视频 | 国产亚洲高清不卡在线观看 | 欧美成年人视频 | 国产精品一久久香蕉国产线看 | 亚洲欧美二区三区久本道 | 成 人 在 线 免费 8888 www | 成年人网站在线 | 国产精品免费一级在线观看 |