Heroku 上的 Flask 数据库迁移

Flask database migrations on heroku

在我的应用程序中,我使用 flask-script 和 flask-migrate 进行数据库迁移,一切都在本地运行。什么时候,我运行

heroku run python manage.py db init

它创建了这个输出:

Running python manage.py db init on ⬢ fpds-scheduler... up, run.1290 (Free)
  Creating directory /app/migrations ... done
  Creating directory /app/migrations/versions ... done
  Generating /app/migrations/README ... done
  Generating /app/migrations/script.py.mako ... done
  Generating /app/migrations/alembic.ini ... done
  Generating /app/migrations/env.py ... done
  Please edit configuration/connection/logging settings in '/app/migrations/alembic.ini' before
  proceeding.

但是当我 运行 heroku run python manage.py db migrate 我得到一个错误

alembic.util.exc.CommandError: Path doesn't exist: 'migrations'.  Please use the 'init' command to create a new scripts folder.

当我 运行 heroku run bash 查看我的目录时,我发现没有 migrations 文件夹...

我已经尝试 运行ning 命令 --app fpds-scheduler 但这似乎也不起作用。

我不确定出了什么问题?

不得在 Heroku 本身上创建迁移。文件系统是短暂的,任何以编程方式编写的内容都将在调用之间丢失。

您需要在本地创建迁移,将它们提交到版本控制、部署,然后才 运行 在 Heroku 上。