main.py 824 B

123456789101112131415161718192021222324252627282930313233
  1. from fastapi import FastAPI
  2. from fastapi.middleware.cors import CORSMiddleware
  3. from fastapi.staticfiles import StaticFiles
  4. from database import engine, Base
  5. from routers import router
  6. import os
  7. # 创建数据表
  8. Base.metadata.create_all(bind=engine)
  9. app = FastAPI(title="库存管理系统", version="1.0.0")
  10. # CORS
  11. app.add_middleware(
  12. CORSMiddleware,
  13. allow_origins=["*"],
  14. allow_credentials=True,
  15. allow_methods=["*"],
  16. allow_headers=["*"],
  17. )
  18. # API路由
  19. app.include_router(router, prefix="/api")
  20. # 健康检查
  21. @app.get("/api/health")
  22. def health():
  23. return {"status": "ok"}
  24. # 静态文件(前端) - 必须放在最后
  25. static_dir = os.path.join(os.path.dirname(__file__), "static")
  26. if os.path.exists(static_dir):
  27. app.mount("/", StaticFiles(directory=static_dir, html=True), name="static")