Django项目进行文件迁移时出现错误:TypeError: init() missing 1 required positional argument: ‘on_delete’
查询资料是因为缺少位置参数on_delete,指定外键的方式不对。
代码如下
from django.db import models
# Create your models here.
# 图书类
class BookInfo(models.Model):
'''图书模型类'''
btitle = models.CharField(max_length=20)
# 出版日期
bpub_date = models.DateField()
class HeroInfo(models.Model):
'''英雄人物模型类'''
hname = models.CharField(max_length=20)
hgender = models.BooleanField(default=False)
hcomment = models.CharField(max_length=128)
hbook = models.ForeignKey('BookInfo')
解决方法如下:
在括号内加入属性on_delete=models.CASCADE即可
hbook = models.ForeignKey('BookInfo',on_delete=models.CASCADE)