1.
错误:
替换 auth_user 报 django.db.migrations.exceptions.InconsistentMigrationHistory: Migration admin.0001_initial is applied before its dependency users.0001_initial on database ‘default’
解决:
删除数据库中 除了auth_user的其他表,然后再 执行以下两条语句
python manage.py makemigrations
python manage.py migrate
2.
错误:
在根据 models生成数据库表时,报以下错误
解决:
在图中的第二行加上 on_delete=models.CASCADE 如果代码其他地方有 定义外键的(即 有models.ForeignKey这个),都要加上。
这是django 2.0后的改动,2.0前都是默认有这句话的,所以不用加,在django2.0后,定义外键和一对一关系的时候需要加 on_delete 选项,此参数为了避免两个表里的数据不一致问题,其实就是在删除有主外键关系的表时,会有所限制。
3.
错误:
在运行 python manage.py runserver (启动服务)时报:
解决:
像这种 Table xxxx doesn’t exist 都是数据库表的问题,所以要从数据库这方面找错误,执行以下两条语句即可解决
python manage.py makemigrations
python manage.py migrate