FILE / ScuroNeko/KuroCore

kurocore/database.py

Исходный файл и его история в репозитории.
FILE c5e0c918283bf9055990cd05e86da0fe277a5e03
Files
KuroCore/kurocore/database.py
T
2024-03-24 04:05:54 +03:00

30 lines
892 B
Python

import logging
from asyncio import get_event_loop
from peewee_async import PostgresqlDatabase, Manager
from kurocore.logger import BotLogger
class Database:
db: PostgresqlDatabase = PostgresqlDatabase(None)
manager: Manager
def __init__(self, settings):
db_settings = settings.database
driver_name = db_settings.driver
host = db_settings.host
name = db_settings.name
user = db_settings.user
password = db_settings.password
port = db_settings.port
if driver_name.lower() not in ('postgres', 'postgresql', 'psql'):
raise
Database.db.init(name, user=user, password=password, host=host, port=port)
loop = get_event_loop()
Database.manager = Manager(Database.db, loop=loop)
Database.manager.allow_sync = logging.ERROR
BotLogger.log.info('Connected to database')