diff --git a/app/api/v1/admin/__init__.py b/app/api/v1/admin_api/__init__.py similarity index 55% rename from app/api/v1/admin/__init__.py rename to app/api/v1/admin_api/__init__.py index 63db93d..1476337 100644 --- a/app/api/v1/admin/__init__.py +++ b/app/api/v1/admin_api/__init__.py @@ -2,9 +2,9 @@ from fastapi import APIRouter -from app.api.v1.admin.cache import router as cache_router -from app.api.v1.admin.config import router as config_router -from app.api.v1.admin.token import router as tokens_router +from app.api.v1.admin_api.cache import router as cache_router +from app.api.v1.admin_api.config import router as config_router +from app.api.v1.admin_api.token import router as tokens_router router = APIRouter() diff --git a/app/api/v1/admin/cache.py b/app/api/v1/admin_api/cache.py similarity index 100% rename from app/api/v1/admin/cache.py rename to app/api/v1/admin_api/cache.py diff --git a/app/api/v1/admin/config.py b/app/api/v1/admin_api/config.py similarity index 100% rename from app/api/v1/admin/config.py rename to app/api/v1/admin_api/config.py diff --git a/app/api/v1/admin/token.py b/app/api/v1/admin_api/token.py similarity index 100% rename from app/api/v1/admin/token.py rename to app/api/v1/admin_api/token.py diff --git a/app/api/v1/public/__init__.py b/app/api/v1/public_api/__init__.py similarity index 54% rename from app/api/v1/public/__init__.py rename to app/api/v1/public_api/__init__.py index 984bf0d..0190889 100644 --- a/app/api/v1/public/__init__.py +++ b/app/api/v1/public_api/__init__.py @@ -2,9 +2,9 @@ from fastapi import APIRouter -from app.api.v1.public.imagine import router as imagine_router -from app.api.v1.public.video import router as video_router -from app.api.v1.public.voice import router as voice_router +from app.api.v1.public_api.imagine import router as imagine_router +from app.api.v1.public_api.video import router as video_router +from app.api.v1.public_api.voice import router as voice_router router = APIRouter() diff --git a/app/api/v1/public/imagine.py b/app/api/v1/public_api/imagine.py similarity index 100% rename from app/api/v1/public/imagine.py rename to app/api/v1/public_api/imagine.py diff --git a/app/api/v1/public/video.py b/app/api/v1/public_api/video.py similarity index 100% rename from app/api/v1/public/video.py rename to app/api/v1/public_api/video.py diff --git a/app/api/v1/public/voice.py b/app/api/v1/public_api/voice.py similarity index 100% rename from app/api/v1/public/voice.py rename to app/api/v1/public_api/voice.py diff --git a/main.py b/main.py index 926d44e..c30905b 100644 --- a/main.py +++ b/main.py @@ -12,7 +12,14 @@ from pathlib import Path from dotenv import load_dotenv -env_file = Path(__file__).parent / ".env" +BASE_DIR = Path(__file__).resolve().parent +APP_DIR = BASE_DIR / "app" + +# Ensure the project root is on sys.path (helps when Vercel sets a different CWD) +if str(BASE_DIR) not in sys.path: + sys.path.insert(0, str(BASE_DIR)) + +env_file = BASE_DIR / ".env" if env_file.exists(): load_dotenv(env_file) @@ -30,8 +37,8 @@ from app.api.v1.image import router as image_router # noqa: E402 from app.api.v1.files import router as files_router # noqa: E402 from app.api.v1.models import router as models_router # noqa: E402 from app.services.token import get_scheduler # noqa: E402 -from app.api.v1.admin import router as admin_router -from app.api.v1.public import router as public_router +from app.api.v1.admin_api import router as admin_router +from app.api.v1.public_api import router as public_router from app.api.pages import router as pages_router from fastapi.staticfiles import StaticFiles @@ -118,7 +125,7 @@ def create_app() -> FastAPI: app.include_router(files_router, prefix="/v1/files") # 静态文件服务 - static_dir = Path(__file__).parent / "app" / "static" + static_dir = APP_DIR / "static" if static_dir.exists(): app.mount("/static", StaticFiles(directory=static_dir), name="static")