运行 Flask CLI 命令与 PyCharm 调试器

Run Flask CLI command with PyCharm debugger

我在 Flask 中创建了一个 custom CLI command,我可以在终端中通过 flask my_command 运行。我想 运行 使用 PyCharm 的调试器执行此命令。

我创建了一个 "Flask server" 配置,并且 运行 使用 PyCharm 调试器将其 PyCharm 设置在我在视图函数内部设置的断点处停止。但是,如果我尝试从 PyCharm 的终端执行 运行 我的 CLI 命令,它不会在命令的断点处停止。

我是否需要自定义配置来调试自定义 CLI 命令?我发现 question 关于 Django 命令,但是 PyCharm 的 "Flask server" 配置没有相同的选项。我如何配置 PyCharm 来调试 Flask CLI 命令?

PyCharm的"Flask server"配置只调用了flask run命令,没有提供调用其他命令的方法。为此,请创建一个常规的 "Python" 配置,该配置 运行 带有您想要的参数的 flask 命令。

  • 创建一个 "Python" 配置并为其命名。
  • Select "Module name" 而不是 "Script path" 并输入 flask.
  • 用要传递的参数填写"Parameters"。例如 my_command --option A.
  • 编辑环境变量以包含 FLASK_APP=my_appFLASK_ENV=development,就像您在终端中使用它们一样。
    • 您可能还需要配置 "Working directory" 以指向您的项目目录,如果您的命令取决于它 运行 的来源。

运行 使用调试器的此配置将在 CLI 命令中的断点处停止,而不是 运行 连接服务器。