在 Flask 中,我们可以定义 CLI命令通过将其传递给 app.cli.command
一切都很好,花花公子,我可以运行我的 initdb
在我的本地机器上使用 python3 -m flask -a appname initdb
命令
我已成功将应用程序上传到 Heroku,除了需要数据库交互的页面外,它仍然可以正常工作。我的 initdb 命令本身应该已经适用于 Heroku,但有一个问题,我无法运行 initdb
在 Heroku 上。
运行此 heroku run python3 -m flask -a appname initdb
产生输出:
Usage: python -m flask [OPTIONS] COMMAND [ARGS]...
Error: No such command "initdb".
使用时
heroku run python3 -m flask -a appname.py initdb
产生以下内容:(没有 heroku run 的相同命令也会在我的机器上初始化数据库:▸ Couldn't find that app.
这很奇怪,因为运行
heroku ls
让我看到 appname.py
在当前目录上。
最佳答案
如果您遇到此错误:
Couldn't find that app.
这是因为您传递了一个无效的应用程序名称作为您的
-a, --app
heroku run
的选项.运行 heroku apps
查找什么是有效名称并重试。
关于heroku - 在 Heroku 上运行 Flask cli 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33566676/