如何在flask-appbuilder中将数据从sqllite迁移到mysql

时间:2018-12-13 10:33:17

标签: python mysql flask flask-appbuilder

我是flask的新手,但是我在Django中有经验。我有一个开发中的项目,该项目正在使用 SQLLITE 来存储和访问数据。 每当我们运行该应用程序时,它都会创建表并将数据第一次存储在 SQLLITE 表中。

现在,我们要将这些数据迁移到MYSQL中,并且我已经在 config.py 中更新了 SQLALCHEMY_DATABASE_URI ,并且当我尝试在上述更新后运行该应用程序时,什么也没发生。

有人可以帮助我吗?我们如何使用flask-appbuilder设置MYSQL数据库。我们需要手动在数据库中创建所有表吗?

2 个答案:

答案 0 :(得分:0)

您需要再次运行迁移:

flask db init
flask db migrate -m "all_tables"
flask db upgrade

然后,您必须将数据迁移到mysql

答案 1 :(得分:0)

我认为您需要在flask_migrate中导入app/__init__.py模块。

示例:

...
# default imports by appbuilder
...
from flask_migrate import Migrate


app = Flask(__name__)
db = SQLA(app
migrate = Migrate()
migrate.init_app(app, db)
appbuilder = AppBuilder(app, db.session)

参考:https://stackoverflow.com/a/52075985/664229

然后,请按照Edmhs的建议运行!