TakwayPlatform/app/__init__.py

53 lines
1.8 KiB
Python

from fastapi import FastAPI, Depends
from fastapi.middleware.cors import CORSMiddleware
from sqlalchemy import create_engine
from .models import Base
from .routes.character_route import router as character_router
from .routes.user_route import router as user_router
from .routes.session_route import router as session_router
from .routes.chat_route import router as chat_router
from .dependencies.logger import get_logger
from config import get_config
#----------------------获取日志------------------------
logger = get_logger()
logger.info("日志初始化完成")
#-----------------------------------------------------
#----------------------获取配置------------------------
Config = get_config()
logger.info("配置获取完成")
#-----------------------------------------------------
#--------------------初始化数据库-----------------------
engine = create_engine(Config.SQLALCHEMY_DATABASE_URI)
Base.metadata.create_all(bind=engine)
logger.info("数据库初始化完成")
#------------------------------------------------------
#--------------------创建FastAPI实例--------------------
app = FastAPI()
logger.info("FastAPI实例创建完成")
#------------------------------------------------------
#---------------------初始化路由------------------------
app.include_router(character_router)
app.include_router(user_router)
app.include_router(session_router)
app.include_router(chat_router)
logger.info("路由初始化完成")
#-------------------------------------------------------
#-------------------设置跨域中间件-----------------------
app.add_middleware(
CORSMiddleware,
allow_origins=["*"], # 允许所有源,也可以指定特定源
allow_credentials=True,
allow_methods=["*"], # 允许所有方法
allow_headers=["*"], # 允许所有头
)
#-------------------------------------------------------