我是一开始没有使用migrate这个功能,后来学到《Flask web开发》第八章后觉得不能迁移数据库太不方便了,就想回来学习下flask-migrate的使用,但是这时候我的hello.py已经使用蓝本分离开了,关于数据库的信息位于models.py里面,但是我cd到app文件夹中使用'python manage.py db upgrade'也还是不行。请问这时候该输入什么命令呢?或者有什么办法能创建迁移脚本呢?
网上搜索一圈没有找到合适的方法,在[Flask-Migrate]http://flask-migrate.readthed...的官方文档中大概看了下,也看不太懂。
创建迁移仓库没有问题,主要就在创建迁移脚本上,在cmd中的提示如下:
(base) C:\Users\kai\PycharmProjects\practice\myflasky>python manage.py db migrate -m "initial migration" INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. INFO [alembic.env] No changes in schema detected.
跟书上相比,少了Detected added table 'roles'以及Detected added table 'users',到versions中查看,的确也是空的。
You need to import database model classes, such as User and Role, in manage.py. If you do not import them, they cannot be detected by flask-migrate.
Refer to my previous question