我正在尝试调试使用 FastAPI (uvicorn) 的应用程序 (web api) 我也在使用诗歌并在 vscode 中设置 projev 虚拟环境。
我读这个教程设置uvicorn和这一个设置vscode但我认为我做的一套东西错了起来。
我尝试将 launch.json 设置为python: module和python: current file
问题似乎是当我运行调试时它无法识别项目结构原因,它在带有此错误的导入语句中停止:
Exception has occurred: ImportError
attempted relative import with no known parent package
Run Code Online (Sandbox Code Playgroud)
这是我当前的 launch.json 配置:
"configurations": [
{
"name": "Python: local debug",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/src/topic_service/service/__init__.py",
"args" : ["--port", "8000"]
},
]
Run Code Online (Sandbox Code Playgroud)
我还尝试添加一个 .env 文件设置 PYTHONPATH:
PYTHONPATH=.:${PYTHONPATH}
Run Code Online (Sandbox Code Playgroud)
我在本地运行应用程序如下:
poetry run uvicorn src.main:app --port 8080 --reload
Run Code Online (Sandbox Code Playgroud)
有谁知道如何正确设置 vscode 来调试 uvicorn 应用程序? …