Базовый абстрактный класс модели, представляющий типовую сущность базы данных.
Описание:
Класс используется для создания типовых моделей с общими свойствами, такими как уникальный идентификатор (id), дата создания (createdAt) и дата последнего обновления (updatedAt). Предназначен для расширения в конкретных классах моделей, которые реализуют бизнес-логику и определяют дополнительные свойства и методы.
Свойства:
id — уникальный первичный ключ записи.
createdAt — дата и время создания записи.
updatedAt — дата последнего обновления записи (null, если данных об изменениях нет).
Методы:
Класс предоставляет доступные методы для получения базовой информации о записи:
getCreatedAt() — возвращает дату и время создания записи.
getUpdatedAt() — возвращает дату последнего обновления или null, если обновления не было.
getColumnVal(string $name) — возвращает значение конкретного столбца по его имени (реализуется в наследниках).
Аннотации:
Класс использует аннотации для указания схемы базы данных с помощью библиотеки Cycle ORM. Например:
#[Column()] определяет параметры поля таблицы.
#[Index()] задаёт индексированные столбцы (например, created_at для быстрого поиска).
Расширяемость:
Класс абстрактный. Для его использования необходимо создать наследника и, как минимум, реализовать метод getColumnVal(), который позволяет получить значение столбца.