34 lines
1.1 KiB
Python
34 lines
1.1 KiB
Python
'''
|
|
1.此文件已经配置 engine 和 SessionLocal .
|
|
由于还没合库,需要自己去 /core/database 配置库名。默认为 student_manager
|
|
具体配置如下
|
|
用户:root
|
|
密码:123456
|
|
IP:localhost
|
|
库名:student_manager
|
|
|
|
2.如果还没开始建库,建库时统一将名称命名为 student_manager。
|
|
如果已经建库或在 models 目录写好Base函数,那先别提交分支,不然合并的时候会出问题,后天合库的时候再说。
|
|
'''
|
|
|
|
from sqlalchemy import create_engine
|
|
from sqlalchemy.orm import sessionmaker
|
|
from .config import (
|
|
database_connect_user,
|
|
database_connect_password,
|
|
database_connect_ip,
|
|
database_connect_database_name,
|
|
)
|
|
engine = create_engine( #engine负责连接mysql
|
|
f"mysql+pymysql://{database_connect_user}:{database_connect_password}@{database_connect_ip}/{database_connect_database_name}?charset=utf8mb4",
|
|
pool_size=50
|
|
)
|
|
SessionLocal = sessionmaker(bind=engine, autoflush=False,autocommit=False)
|
|
|
|
def get_db():
|
|
db = SessionLocal()
|
|
try:
|
|
yield db
|
|
finally:
|
|
db.close()
|