起因是我的数据库到期了,更新新的数据库地时候makemigrations迁移时提示没有数据变更。
解决方法:
python manage.py makemigrations --empty appname
先创建空包 然后在指定appname 进行迁移
python manage.py makemigrations appname
多个app可以多次迁移
如果修改了django自带地auth模块,自定义了user模型
在进行migrate时,需要先migrate auth模型,然后在migrate其它模型。
初步解决后发现mysql版本不对(mysql = 5.5) ,makemigrations会出现报错,后续又更换了数据库版本就彻底ok了 (mysql 5.7 or 8.0)
环境:
python 3.10
django 4.1 (修改函数可以使4.0版本支持5.7+ 版本地数据库 否则只能用8.0+)