22 lines
581 B
Python
22 lines
581 B
Python
from contextlib import asynccontextmanager
|
|
|
|
from fastapi import FastAPI
|
|
from starlette.middleware.sessions import SessionMiddleware
|
|
|
|
from app.admin import mount_admin
|
|
from app.api.v1.routes import router as v1_router
|
|
from app.core.config import settings
|
|
from app.db.init_db import init_db
|
|
|
|
|
|
@asynccontextmanager
|
|
async def lifespan(_: FastAPI):
|
|
init_db()
|
|
yield
|
|
|
|
|
|
app = FastAPI(title=settings.APP_NAME, root_path=settings.ROOT_PATH, lifespan=lifespan)
|
|
app.add_middleware(SessionMiddleware, secret_key=settings.ADMIN_SECRET_KEY)
|
|
app.include_router(v1_router)
|
|
mount_admin(app)
|