diff options
Diffstat (limited to 'ATRI/database/db.py')
-rw-r--r-- | ATRI/database/db.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/ATRI/database/db.py b/ATRI/database/db.py new file mode 100644 index 0000000..6e20ad3 --- /dev/null +++ b/ATRI/database/db.py @@ -0,0 +1,27 @@ +from pathlib import Path +from tortoise import Tortoise, run_async + +from ATRI.log import logger as log + + +# 临时的实现,寻求更好的方式!欢迎pr + + +DB_DIR = Path(".") / "data" / "sql" +DB_DIR.mkdir(parents=True, exist_ok=True) + + +async def run(): + from ATRI.database import models + + await Tortoise.init( + db_url=f"sqlite://{DB_DIR}/db.sqlite3", + modules={"models": [locals()["models"]]}, + ) + await Tortoise.generate_schemas() + + +def init_database(): + log.info("正在初始化数据库...") + run_async(run()) + log.success("数据库初始化完成") |