VSCodeでFastAPIアプリケーションをデバッグする 質問する

VSCodeでFastAPIアプリケーションをデバッグする 質問する

FastAPI (uvicorn) を使用するアプリケーション (Web API) をデバッグしようとしています。また、poetry を使用して、vscode で projev 仮想環境を設定しています。

私は読むこれuvicornのセットアップチュートリアルとこれですvscode をセットアップしたいのですが、セットアップ中に何か間違っていると思います。

launch.jsonを次のように設定してみましたpython: モジュールそしてpython: 現在のファイル

問題は、プロジェクト構造が認識されないことにあるようです。デバッグを実行すると、次のエラーが発生し、インポート ステートメントで停止します。

Exception has occurred: ImportError
attempted relative import with no known parent package

これは私の現在の launch.json 構成です:

"configurations": [
    {
        "name": "Python: local debug",
        "type": "python",
        "request": "launch",
        "program": "${workspaceFolder}/src/topic_service/service/__init__.py",
        "args" : ["--port", "8000"]
    },
]

PYTHONPATH を設定する .env ファイルも追加してみました:

PYTHONPATH=.:${PYTHONPATH}

ローカルでは次のようにアプリケーションを実行します。

poetry run uvicorn src.main:app --port 8080 --reload

正しいやり方を知っている人はいますか?uvicorn アプリケーションをデバッグするために vscode を設定する?

ありがとう

アップデート:私も試してみましたこの記事デバッガは起動しているようですが、何も起こりません(ブレークポイントはトリガーされません)

ベストアンサー1

この構成を試してください。

{
    "name": "Python: Module",
    "type": "python",
    "request": "launch",
    "module": "uvicorn",
    "args": ["src.main:app","--reload"]
}

おすすめ記事