Background
自己从零开始所遇到的问题以及最终的解决方法,这里做个整理记录,方便以后查阅,也方便他人参考。
1、【TypeError: init() missing 1 required positional argument: ‘on_delete’】
- 问题原因
django 升级到2.0之后,表与表之间关联的时候,必须要写on_delete参数,否则会报异常。
- 解决方法
定义外键的时候需要加上 on_delete参数。
class Students(models.Model):
s_name = models.CharField(max_length=20)
s_gender = models.BooleanField(default=True)
s_age = models.IntegerField()
s_contend = models.CharField(max_length=20)
is_delete = models.BooleanField(default=False)
# 关联外键
s_grade = models.ForeignKey(to="Grades", on_delete=models.DO_NOTHING)
2、MySQL链接超时异常
- 可能报如下错误:
- 【django.db.utils.InterfaceError: (0, ‘’)】
- 【pymysql.err.InterfaceError: (0, ‘’)】
- 【django.db.utils.OperationalError: (2013, ‘Lost connection to MySQL server during query ([WinError 10053] 你的主机中的软件中止了一个已建立的连接。)’)】
- 【pymysql.err.OperationalError: (2013, ‘Lost connection to MySQL server during query ([WinError 10053] 你的主机中的软件中止了一个已建立的连接。)’)】
- 【ConnectionAbortedError: [WinError 10053] 你的主机中的软件中止了一个已建立的连接。】
- 问题原因
mysql每次链接默认8个小时,超过8个小时就会报链接超时异常。
- 解决方法
重连下或修改默认配置。