Files
asuinventory/backend/main.py

49 lines
1.3 KiB
Python

# backend/main.py
from fastapi import FastAPI
from fastapi.responses import RedirectResponse
from starlette.staticfiles import StaticFiles
from fastapi.middleware.cors import CORSMiddleware
from backend.routers.equipment_types import equipment_types
from backend.routers.auditories import auditories
from backend.routers.oboruds import oboruds
from backend.routers.components import components
from backend.routers.rashodniki import consumables
from backend.routers.zametki import zametki
app = FastAPI()
# Для фронтенда Vue.js
app.add_middleware(
CORSMiddleware,
allow_origins=["*"], # заменить на ['http://localhost:5173'] для безопасности
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
@app.get("/ping")
def ping():
return {"message": "pong"}
# Serve static assets and frontend
app.mount("/static", StaticFiles(directory="static"), name="static")
app.mount("/app", StaticFiles(directory="frontend", html=True), name="frontend")
@app.get("/")
def root():
return RedirectResponse(url="/app/")
# Подключение роутов
app.include_router(equipment_types)
app.include_router(auditories)
app.include_router(oboruds)
app.include_router(components)
app.include_router(consumables)
app.include_router(zametki)