【问题标题】:Python, fastAPI, uvicorn - Error loading ASGI app. Could not import module "main"Python、fastAPI、uvicorn - 加载 ASGI 应用程序时出错。无法导入模块“main”
【发布时间】:2022-01-20 19:16:43
【问题描述】:

我无法启动 uvicorn。我对 python 和 fastapi 很陌生,所以我假设我做了一些非常愚蠢的事情。

我已将问题隔离在我的 api_router.py 文件中

from fastapi import APIRouter
from API.endpoints import user_endpoints

api_router = APIRouter()

api_router.include_router(user_endpoints, prefix="/user", tags=["User"])

当我从 API.endpoints 中注释掉时,导入 user_endpoints 和 api_router.include_router(user_endpoints, prefix="/user", tags=["User"]),不会出现错误。我是否尝试错误地导入我的 user_endpoints.py 文件?我附上了目录结构的图片。

user_endpoints.py 看起来像这样:

from fastapi.routing import APIRouter
from typing import Optional, List
from API.schema.user import User
from models.user import Users
from main import db

router = APIRouter

@router.get('/users', response_model=List[User], status_code=200)
def get_all_users():
    users=db.query(Users).all()
    return users

@router.get('/users/{user_id}')
def get_user(user_id):
    pass
    
@router.post('/users')
def create_user():
    pass

@router.put('/users/{user_id}')
def update_user(user_id):
    pass

@router.delete('/users/{user_id}')
def delete_user(user_id):
    pass

对此的任何帮助将不胜感激。

谢谢,

格雷格

【问题讨论】:

    标签: python import fastapi uvicorn asgi


    【解决方案1】:

    我认为这是在谈论您终端的当前工作目录,当您输入它时 uvicorn main:app ... 无法找到 main.使你的终端的工作目录与main.py相同

    【讨论】:

      猜你喜欢
      • 2020-07-04
      • 1970-01-01
      • 2021-10-24
      • 1970-01-01
      • 2019-01-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多