Перейти к содержанию

Класс: DatabaseGateway

Краткое содержание:

Шлюз доступа к базе данных через Cycle ORM.


Свойства


Методы


Подробности

  • Путь: devcraft/src/classes/Database/DatabaseGateway.php

Детали

Свойства

$database_manager

Шлюз доступа к базе данных через Cycle ORM.

$entity_manager

Конфигурация подключения к базе данных.

Методы

__construct()

Создаёт шлюз с реестром модулей для разрешения путей сущностей.

С версии: 171.3.0

Параметры: - $registry — Реестр DevCraft-модулей.

getOrm()

Возвращает экземпляр ORM, создавая его при необходимости.

С версии: 171.3.0

Возвращает: ORM\ORM — Экземпляр ORM.

setManager()

Инициализирует менеджер сущностей на основе текущего ORM.

С версии: 171.3.0

getManager()

Возвращает менеджер сущностей, создавая его при первом обращении.

С версии: 171.3.0

Возвращает: EntityManager — Менеджер сущностей ORM.

repository()

Возвращает репозиторий для указанной сущности или класса.

С версии: 171.3.0

Параметры: - $entity — Объект сущности или FQCN класса.

Возвращает: RepositoryInterface — Репозиторий Cycle ORM.

get()

Получает сущность по первичному ключу.

С версии: 171.3.0

Параметры: - $entity — Объект сущности или FQCN класса. - $pk — Первичный ключ записи.

Возвращает: object|null — Найденная сущность или null.

getAll()

Возвращает все записи указанной сущности.

С версии: 171.3.0

Параметры: - $entity — Объект сущности или FQCN класса.

Возвращает: array<int, — object> Массив сущностей.

delete()

Удаляет сущность по первичному ключу.

С версии: 171.3.0

Параметры: - $entity — Объект сущности или FQCN класса. - $pk — Первичный ключ записи.

Возвращает: StateInterface — Состояние завершённой транзакции.

run()

Сохраняет сущность и возвращает состояние транзакции.

С версии: 171.3.0

Параметры: - $entity — Сущность для сохранения.

Возвращает: StateInterface — Состояние завершённой транзакции.

create()

Создаёт новую запись сущности в базе данных.

С версии: 171.3.0

Параметры: - $entity — Сущность для создания.

Возвращает: StateInterface — Состояние завершённой транзакции.

update()

Обновляет существующую запись сущности в базе данных.

С версии: 171.3.0

Параметры: - $entity — Сущность для обновления.

Возвращает: StateInterface — Состояние завершённой транзакции.

createOrUpdate()

Создаёт или обновляет сущность в зависимости от наличия первичного ключа.

С версии: 173.3.4

Параметры: - $entity — Сущность для сохранения.

Возвращает: StateInterface — Состояние завершённой транзакции.

connection()

Возвращает интерфейс подключения Cycle Database.

С версии: 171.3.0

Возвращает: DatabaseInterface — Активное подключение к БД.

query()

Выполняет SQL-запрос с параметрами.

С версии: 171.3.0

Параметры: - $sql — SQL-запрос с плейсхолдерами.

Возвращает: StatementInterface — Результат выполнения запроса.

paginate()

Формирует пагинированную выборку для сущности.

С версии: 171.3.0

Параметры: - $entity — Сущность или FQCN класса. - $orderby — Поле сортировки. - $sortby — Направление сортировки (ASC или DESC). - $limit — Количество записей на странице. - $page — Номер страницы.

Возвращает: ORM\Select — Настроенный объект выборки.

count()

Подсчитывает количество записей указанной сущности.

С версии: 171.3.0

Параметры: - $entity — Сущность или FQCN класса.

Возвращает: int — Число записей в таблице.

generateOrm()

Лениво создаёт и кэширует экземпляр ORM.

С версии: 171.3.0

Возвращает: ORM\ORM — Инициализированный ORM.

generateManager()

Возвращает менеджер базы данных Cycle, создавая его при необходимости.

С версии: 171.3.0

Возвращает: DatabaseManager — Менеджер подключений.

generateOrmConfig()

Формирует конфигурацию подключения из констант DLE.

С версии: 171.3.0

Возвращает: Config\DatabaseConfig — Конфигурация Cycle Database.

compileSchema()

Компилирует схему ORM и возвращает массив схемы вместе с мигратором.

С версии: 171.3.0

Параметры: - $registry — Реестр Cycle Schema.

Возвращает: array{0: array<string, mixed>, 1: Migrations\Migrator} — Схема и мигратор.

assertDatabaseConstants()

Проверяет наличие обязательных констант подключения к БД.

С версии: 171.3.0

loadDatabaseConfigIfNeeded()

Подключает dbconfig.php DLE, если константы БД ещё не определены.

С версии: 171.3.0