Задать вопрос

Нормально ли, когда ActiveRecord модель является фабрикой моделей?

Доброго дня.
Есть общая модель Stats, а есть субмодели, описывающие конкретную сущность (ServiceOneStats, ServiceTwoStats). Разделять считаю некорректным, т.к. тип сущности один и тот же - статистика. У каждой из моделей есть своя таблица. Хочется, чтобы, получая инстанс модели Stats с определенным типом, я мог сразу получить доступ к данным подмодели.

Немного псевдокода ниже.
$StatsModel = new Models\Stats(1, 'service-one'); 
$StatsModel->serviceOneField;

$StatsModel = new Models\Stats(2, 'service-two'); 
$StatsModel->serviceTwoField;

Сложность в том, что у Stats тоже есть таблица, с id, title и парой других общих полей (дата создания и т.п.).

Вопрос в следующем: нормально ли, когда AR-модель выполняет функции фабрики \ обращается к фабрике? Ведь мне придется как-то получать дочерние модели, дабы вытащить из них данные правильным (в экосистеме фреймворка) методом. Возможно, есть какой-то паттерн, решающий проблему получения данных из наследуемых моделей (субсущностей)? Или это наоборот, антипаттерн, и модели наследовать нельзя?

Заранее спасибо.
  • Вопрос задан
  • 371 просмотр
Подписаться 3 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽