【问题标题】:Running flask cli commands on Heroku在 Heroku 上运行烧瓶 cli 命令
【发布时间】:2016-02-07 14:14:15
【问题描述】:

在 Flask 中,我们可以通过将 CLI 命令传递给 app.cli.command 来定义它

一切都很好,我可以在本地机器上使用python3 -m flask -a appname initdb 运行我的initdb 命令

我已成功将应用上传到 Heroku,除了需要数据库交互的页面外,它可以正常运行。我的 initdb 命令本身应该已经可以与 Heroku 一起使用了,one 有问题,我无法在 Heroku 上运行 initdb

运行这个heroku run python3 -m flask -a appname initdb 会产生输出:

用法:python -m flask [OPTIONS] COMMAND [ARGS]...

错误:没有这样的命令“initdb”。

虽然使用heroku run python3 -m flask -a appname.py initdb 会产生以下结果:(没有heroku run 的相同命令也会初始化我机器上的数据库:

▸ 找不到那个应用程序。

这很奇怪,因为运行heroku ls 允许我在当前目录上看到appname.py

【问题讨论】:

  • 如果您的应用遵循cookiecutter-flask 约定,则需要set your environment variables: heroku config:set FLASK_APP=/path/to/autoapp.py
  • 对于遇到此问题的其他人:如果您在 heroku 中安装应用程序(例如,如果您有 setup.py),您可以运行 heroku config:set FLASK_APP=name_of_your_flask_app 并跳过正确路径的麻烦。

标签: heroku flask heroku-postgres


【解决方案1】:

如果遇到此错误:

找不到那个应用程序。

这是因为您为heroku run 传递了一个无效的应用名称作为-a, --app 选项。运行heroku apps 查找有效名称并重试。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-20
    • 2020-09-10
    • 1970-01-01
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-05
    相关资源
    最近更新 更多