from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware from app.config import API_TITLE, API_VERSION from app.routers import jokes_router, categories_router, auth_router, admin_router, settings_router, links_router, feedback_router, generate_router from app.database import Base, engine from app.models.setting import AiSetting from app.models.link import Link from app.models.feedback import Feedback # 注册模型,确保 create_all 能看到 # 创建新表(如果不存在) Base.metadata.create_all(bind=engine) # Create FastAPI application app = FastAPI(title=API_TITLE, version=API_VERSION) # Configure CORS app.add_middleware( CORSMiddleware, allow_origins=["*"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"], ) # Mount routers app.include_router(jokes_router, prefix="/api") app.include_router(categories_router, prefix="/api") app.include_router(auth_router, prefix="/api") app.include_router(admin_router, prefix="/api") app.include_router(settings_router, prefix="/api") app.include_router(links_router, prefix="/api") app.include_router(feedback_router, prefix="/api") app.include_router(generate_router, prefix="/api") @app.get("/") def root(): return {"message": "欢迎使用笑话大全 API"} @app.get("/health") def health_check(): return {"status": "healthy"}