Отладка приложения FastAPI в VSCode - PullRequest
0 голосов
/ 13 февраля 2020

Я пытаюсь отладить приложение (веб-API), которое использует FastAPI (uvicorn). Я также использую поэзию и устанавливаю виртуальную среду projev в vscode.

Я читаю this учебник по настройке uvicorn и этот по настройке vscode, но я думаю, что я что-то не так делаю в настройке.

Я пытался настроить запуск. json оба как python: модуль и python: текущий файл

Кажется, что проблема не в том, что структура проекта не распознается, когда я запускаю отладку, она остановилась в операторе импорта с этой ошибкой:

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

Это мой текущий запуск. json конфигурация:

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

Я также попытался добавить параметр файла .env PYTHONPATH:

PYTHONPATH=.:${PYTHONPATH}

Локально я запускаю приложение следующим образом:

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

Кто-нибудь знает, как правильно настроить vscode для отладки приложения uvicorn ?

Спасибо

ОБНОВЛЕНИЕ: Я также попробовал то, что говорит эта статья . кажется, что отладчик запускается, но ничего не происходит (точка останова не срабатывает)

1 Ответ

0 голосов
/ 02 апреля 2020

Попробуйте эту конфигурацию.

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