Как отладить ошибку генерации OpenAPI FastAPIPython

Программы на Python
Anonymous
Как отладить ошибку генерации OpenAPI FastAPI

Сообщение Anonymous »

Я потратил некоторое время на исправление этой ошибки, но безуспешно.

Файл "C:\Users\ebara.conda\envs\asci\lib\site-packages\fastapi\openapi\utils.py", строка 388, в get_openapi
flat_models=flat_models, model_name_map=model_name_map


Файл «C:\Users\ebara.conda\envs\asci\lib\site-packages\fastapi\utils.py», строка 28, в get_model_definitions
model_name = model_name_map[model]


KeyError:

Проблема в том, что я пытаюсь создать проект с аутентификацией пользователя из формы OpenAPI для создания новых пользователей в базе данных.
Я использовал серверную часть этого проекта шаблона https://github.com/tiangolo/full-stack- ... postgresql
Все работает, кроме аутентификации, как здесь.

Код: Выделить всё

@router.post("/login/access-token", response_model=schemas.Token)
def login_access_token(
db: Session = Depends(deps.get_db), form_data: OAuth2PasswordRequestForm = Depends()) -> Any:
Когда я добавляю эту часть form_data: OAuth2PasswordRequestForm = Depends() - и перехожу на страницу /docs - появляется эта ошибка (Не удалось загрузить определение API. Ошибка выборки. Внутренняя ошибка сервера /openapi.json)
Изображение
.
Сам сервер работает в обычном режиме, но загрузить открытый API не может. Если я удалю вышеупомянутую часть formdata - все будет работать гладко, но без авторизации. Я пытался отладить его, но безуспешно. Я думаю, что это может быть связано с графом зависимостей или какими-то проблемами при запуске, но не знаю, как это отследить.
Вот полный рабочий пример, который воспроизводит ошибку. Ссылка указывает на код, который вызывает проблему. Если вы закомментируете строки 18-39 - документы откроется без проблем.
https://github.com/BEEugene/fastapi_err ... s/login.py
Есть идеи, как отладить или почему возникает эта ошибка?

Подробнее здесь: https://stackoverflow.com/questions/702 ... tion-error

Вернуться в «Python»