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

試用Djiango的時候發現執行mange.py makemigrations 和 migrate是會報錯,少位置參數on_delete,查了一下是因爲指定外鍵的方式不對,改一下就OK了。
代碼如下:

from django.db import models # Create your models here. class BookInfo(models.Model):

"""model of book infomation"""

# 書的標題 字符串類型  最大長度20

btitle = models.CharField(max_length=20)

# 出版日期 日期類型

bpub_date = models.DateTimeField() class HeroInfo(models.Model):

"""model of hero information"""

# 英雄的名字  字符串類型 最大長度30

hname = models.CharField(max_length=30)

# 性別 布爾類型

hgender = models.BooleanField()

# 內容 字符串類型 最大長度1000

hcontent = models.CharField(max_length=1000)

# 英雄出現的書 一對多設計 多方持有一方的外鍵

hbook = models.ForeignKey(BookInfo)

 

解決方法:

# 英雄出現的書 一對多設計 多方持有一方的外鍵

# hbook = models.ForeignKey(BookInfo) hbook = models.ForeignKey('BookInfo', on_delete=models.CASCADE)

 

轉載地址:https://www.cnblogs.com/endurance9/p/8083747.html

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章