使用CLI中的命令迁移我在Django中创建的模型
python manage.py migrate
在CLI显示错误
__init__() missing 1 required positional argument: 'on_delete'
这是代码:
from django.db import models
class Topic(models.Model):
top_name = models.CharField(max_length=264,unique=True)
def __str__(self):
return self.top_name
class Webpage(models.Model):
topic = models.ForeignKey(Topic)
name = models.CharField(max_length=264,unique=True)
url = models.URLField(unique=True)
def __str__(self):
return self.name
class AccessRecord(models.Model):
name = models.ForeignKey(Webpage)
date = models.DateField()
def __str__(self):
return str(self.date)
答案 0 :(得分:1)
因为在此行中缺少1个必需的位置参数:“ on_delete”。
topic = models.ForeignKey(Topic,on_delete=models.CASCADE)
name = models.ForeignKey(Webpage,on_delete=models.CASCADE)
Django
“多对一关系。需要两个位置参数:与模型相关的类和on_delete选项。”