问题标签 [flask-cli]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4221 浏览

python - Flask CLI 命令和参数

如何让 Flask CLI 命令接受参数?

Flask 似乎自定义了 Click Group 对象,所以这不起作用:

0 投票
1 回答
848 浏览

python - flask cli 找不到脚本 manage.py

我的烧瓶应用程序是一个名为的包app,位于/Users/gexinjie/Codes/MyProject/xinnjie_blog

文件树是这样的

我将其导出为PATHONPATH,因此manage.py可以导入app

和出口FLASK_APP

当前目录是/Users/gexinjie/Codes/MyProject/xinnjie_blog

这里是manage.py

这是app.__init__.py

但是如果我执行flask initdb,我会收到这个错误:

如果我执行flask run,我得到

为什么找不到manage.py?我该如何解决它。(实际上,当manage.py有烧瓶应用程序时效果很好)

谢谢

0 投票
1 回答
840 浏览

python - 使用 Flask-CLI 运行时,Flask app.errorhandler 未捕获异常

在使用 Flask-CLI 调用应用程序时,我正在努力让我的 Flask 应用程序正确处理错误。

这是一个简单的文件,名为app_runner.py

test_run我通过这个 bash 命令调用该函数: FLASK_APP=app_runner.py flask test_run.

我看到第一个打印语句“你会看到这个”,但我没有看到那个说“我希望我看到这个”的语句。

我点击了Exception,但我从来没有进入下定义的代码app.errorhandler。有没有人有什么建议?

0 投票
2 回答
3148 浏览

python - 使用应用程序工厂迁移 Flask 时出错

运行.py

管理.py

当我运行时: python manage.py db init

当我运行时:flask db init

我尝试将 FLASK_APP 导出为 run、run.py、run.create_app、run:create_app(),但仍然出现上面显示的错误。是什么导致了这个错误?

0 投票
1 回答
1057 浏览

python - 在 FlaskGroup 中使用 `create_app` 参数

我有烧瓶应用程序,它使用应用程序工厂模式来实例化烧瓶应用程序。我正在尝试将 Flask CLI 命令行集成到我的烧瓶应用程序中。

任何人都可以帮助我理解调用create_app内部参数的使用FlaskGroup

以下是我的代码片段。

如果我像普通的烧瓶应用程序一样使用,那么我就不必使用create_app参数,在这种情况下我的代码片段看起来像

0 投票
2 回答
1569 浏览

python - Flask CLI 命令不在 __init__.py 文件中

我正在尝试添加commands到我的 Flask 应用程序中。

这是我的__init__.py文件:

如果我添加它:

我可以毫无问题地运行flask test_run,但是如果我尝试将代码移动到另一个文件,例如: ,我在尝试运行命令时commands.py会收到错误消息。Error: No such command "test_run".

我错过了什么?

0 投票
1 回答
4401 浏览

python - 使用 PyCharm 调试器运行 Flask CLI 命令

我在 Flask 中创建了一个自定义 CLI 命令,我可以flask my_command在终端中运行它。我想使用 PyCharm 的调试器运行这个命令。

我创建了一个“Flask 服务器”配置,并使用 PyCharm 调试器在我在视图函数中设置的断点处停止运行它。但是,如果我尝试从 PyCharm 的终端运行我的 CLI 命令,它不会在命令的断点处停止。

我是否需要自定义配置来调试自定义 CLI 命令?我发现了一个关于 Django 命令的问题,但是 PyCharm 的“Flask 服务器”配置没有相同的选项。如何配置 PyCharm 来调试 Flask CLI 命令?

0 投票
1 回答
7400 浏览

python - 在 CLI 命令中访问 Flask 应用程序上下文

我想注册一个在 Flask 应用程序工厂的单独文件中定义的 CLI 命令。此命令需要访问app.config. 但是,current_app.config从命令访问会引发RuntimeError: Working outside of application context.

app/__init__.py

instance/config.py

app/commands.py

我希望运行flask my_command输出TESTVALUE。但是,我收到以下错误:

我需要使用with app.app_context():forcurrent_app来工作,但我无权访问,app因为它是在工厂中定义的。如果我@app.cli.command()在工厂使用,这不会有问题,因为我可以访问app变量,甚至不需要推送应用程序上下文。

但是,我想在其他文件中定义我的命令并让它们使用应用程序配置中的值,而这需要将所有命令嵌套在工厂函数中。

我尝试使用命令中的工厂创建一个应用程序,这很有效,但我不认为这样做只是为了访问配置变量是一个好主意。

使用应用程序工厂模式时,如何定义可以访问应用程序上下文的命令?

0 投票
1 回答
1468 浏览

python-3.x - 创建自定义“测试”命令以运行 Flask 应用程序的测试套件

我们正在使用一些自定义命令扩展 Flask-cli。该命令test是其中之一:

然而,一个典型的测试(使用 Python 的内置 unittest 模块)看起来像这样,它基于此处描述的样式。

我显然在这里遇到了一个反模式:我已经使用 default( development) 配置初始化了一个烧瓶对象,因为我需要它用于@app.cli.command()装饰器,这一切都发生在run.py. 但是,一旦我在其中运行测试 setUp 函数,some-tests.py我就必须以某种方式使用该配置获取一个 Flask 对象,例如,通过使用现在发生testing的配置重新创建一个 Flask 应用程序。testing

我想知道如何实现一个flask-cli测试命令,其中只Flask创建一个对象,该对象在各种测试用例中重复使用,而无需testing在我flask test在命令行上运行之前明确设置环境。

0 投票
1 回答
1622 浏览

flask - 当我使用烧瓶 cli 运行我的应用程序时,为什么会收到错误“未从...获得有效的 Flask 应用程序”?

我尝试使用烧瓶 cli 启动我的应用程序,即flask run. 我使用FLASK_APP环境变量指向我的应用程序,即export FLASK_APP=package_name.wsgi:app

在我的wsgi.py文件中,我使用工厂函数创建应用程序,即app = create_app(config)我的 create_app 方法如下所示:

但是,应用程序没有启动,我收到错误:

未从“package_name.wsgi:app”获取有效的 Flask 应用程序。

为什么是这样?

我使用gunicorn时可以正常启动我的应用程序,即gunicorn package_name.wsgi:app