src.db.models
Модуль базы данных.
Этот модуль содержит схемы таблиц базы данных и перечисления, используемые в проекте. Он импортирует необходимые модели и определяет структуру базы данных.
Импортируемые модели:
- UserData: Модель данных пользователя.
- Transactions: Модель транзакций.
- WgConfig: Модель конфигурации WireGuard.
- Reports: Модель отчетов.
- YoomoneyOperation: Модель операции YooMoney.
- YoomoneyOperationDetails: Модель деталей операции YooMoney.
- News: Модель новостей.
Перечисления:
- FreezeSteps: Шаги заморозки.
- ReportStatus: Статусы отчетов.
- UserActivity: Статусы активности пользователей.
- Notifications: Типы уведомлений.
Словарь TABLES_SCHEMA сопоставляет названия таблиц с их соответствующими моделями.
Attributes:
- TABLES_SCHEMA (dict): Словарь, где ключами являются названия таблиц,
- а значениями - соответствующие модели.
1""" 2Модуль базы данных. 3 4Этот модуль содержит схемы таблиц базы данных и перечисления, используемые в проекте. 5Он импортирует необходимые модели и определяет структуру базы данных. 6 7Импортируемые модели: 8- UserData: Модель данных пользователя. 9- Transactions: Модель транзакций. 10- WgConfig: Модель конфигурации WireGuard. 11- Reports: Модель отчетов. 12- YoomoneyOperation: Модель операции YooMoney. 13- YoomoneyOperationDetails: Модель деталей операции YooMoney. 14- News: Модель новостей. 15 16Перечисления: 17- FreezeSteps: Шаги заморозки. 18- ReportStatus: Статусы отчетов. 19- UserActivity: Статусы активности пользователей. 20- Notifications: Типы уведомлений. 21 22Словарь TABLES_SCHEMA сопоставляет названия таблиц с их соответствующими моделями. 23 24Attributes: 25 TABLES_SCHEMA (dict): Словарь, где ключами являются названия таблиц, 26 а значениями - соответствующие модели. 27""" 28 29from core.config import Base 30from db import ddl as _ # NOTE TRIGGERS 31from db.models.enums import (FreezeSteps, NotificationType, ReportStatus, 32 UserActivity) 33from db.models.news import News 34from db.models.notifications import Notifications 35from db.models.reports import Reports 36from db.models.transactions import Transactions 37from db.models.userdata import UserData 38from db.models.wg_config import WgConfig 39from db.models.yoomoney import (YoomoneyOperation, YoomoneyOperationDetails, 40 yoomoney_site_display) 41 42TABLES_SCHEMA = { 43 UserData.__tablename__: UserData, 44 Transactions.__tablename__: Transactions, 45 WgConfig.__tablename__: WgConfig, 46 Reports.__tablename__: Reports, 47 YoomoneyOperation.__tablename__: YoomoneyOperation, 48 News.__tablename__: News, 49 Notifications.__tablename__: Notifications, 50}
TABLES_SCHEMA =
{'userdata': <class 'db.models.userdata.UserData'>, 'transactions': <class 'db.models.transactions.Transactions'>, 'wg_config': <class 'db.models.wg_config.WgConfig'>, 'reports': <class 'db.models.reports.Reports'>, 'yoomoney': <class 'db.models.yoomoney.YoomoneyOperation'>, 'news': <class 'db.models.news.News'>, 'notifications': <class 'db.models.notifications.Notifications'>}