Initial commit
This commit is contained in:
47
api/app/main.py
Normal file
47
api/app/main.py
Normal file
@@ -0,0 +1,47 @@
|
||||
from contextlib import asynccontextmanager
|
||||
|
||||
from fastapi import FastAPI
|
||||
from fastapi.security import OAuth2PasswordBearer
|
||||
from fastapi.middleware.cors import CORSMiddleware
|
||||
from fastapi_pagination import add_pagination
|
||||
|
||||
|
||||
from db import create_db_and_tables
|
||||
from user import user_router, auth_router, create_admin_account
|
||||
from account.routes import router as account_router
|
||||
from category.routes import router as category_router
|
||||
|
||||
|
||||
@asynccontextmanager
|
||||
async def lifespan(app: FastAPI):
|
||||
create_db_and_tables()
|
||||
create_admin_account()
|
||||
yield
|
||||
#do something before end
|
||||
|
||||
app = FastAPI(lifespan=lifespan)
|
||||
add_pagination(app)
|
||||
|
||||
origins = [
|
||||
"http://localhost:8000",
|
||||
"http://localhost:5173",
|
||||
]
|
||||
|
||||
app.add_middleware(
|
||||
CORSMiddleware,
|
||||
allow_origins=origins,
|
||||
allow_credentials=True,
|
||||
allow_methods=["*"],
|
||||
allow_headers=["*"],
|
||||
)
|
||||
|
||||
app.include_router(auth_router, prefix="/auth", tags=["auth"], )
|
||||
app.include_router(user_router, prefix="/users", tags=["users"])
|
||||
app.include_router(account_router, prefix="/accounts", tags=["accounts"])
|
||||
app.include_router(category_router, prefix="/categories", tags=["categories"])
|
||||
|
||||
oauth2_scheme = OAuth2PasswordBearer(tokenUrl="token")
|
||||
|
||||
if __name__ == '__main__':
|
||||
import uvicorn
|
||||
uvicorn.run("main:app", host='0.0.0.0', port=8000, reload=True)
|
||||
Reference in New Issue
Block a user