无法从 flask_migrate 导入 MigrateCommand

Can't import MigrateCommand from flask_migrate

我在 Flask 应用程序中创建了一个用于数据库迁移的 manage.py 文件,但在尝试导入 MigrateCommand 时出现错误。我正在使用 PyCharm 并且我确定该软件包已安装。

代码:

import os
from flask_migrate import Migrate,MigrateCommand
from flask_script import Manager
from app import app, db

app.config.from_object(os.environ['APP_SETTINGS'])

migrate = Migrate(app, db)
manager = Manager(app)

manager.add_command('db', MigrateCommand)


if __name__ == '__main__':
    manager.run()

错误:

Cannot find reference 'MigrateCommand' in '__init__.py' 

编辑:

就像 Matteo Pasini 回答的那样,不再支持 Flask-Script,最好的解决方案是使用 Flask CLI。对于任何想知道使用 Flask CLI 的 manage.py 文件的等价物的人,我建议阅读这个解释得很好的简短指南:

https://medium.datadriveninvestor.com/migrating-flask-script-to-flask-2-0-cli-4a5eee269139

似乎不​​再支持MigrateCommandhttps://github.com/miguelgrinberg/Flask-Migrate/issues/407

可能的解决方法是安装旧版本的 Flask-Migrate,例如:

pip install Flask-Migrate==2.6.0

或切换到 Flask CLI