Активность вычисляется относительно текущей даты. Модель активна 10 дней со дня создания + еще какие то условия относительно своих свойств.
А, тогда да. Это должен проверять либо крон, либо сама врайт часть когда что-то с ней произойдёт (типа лейзи вариант)
есть ещё простой вариант написать функцию и расшарить её между read и write. Импортируешь в 2х местах и используешь 🤔 Работать оно будет над одними и теми же данными, так что отделения данных от поведения не происходит, хоть это и отдельная функция
Ну трейты тоже такое себе. Хотя как простой прямой вариант - сработает.
я хз, можно ли из трейта функцию протестить, никогда не юзал трейты. Но по сути тебе нужна функция, для этого не обязательно юзать трейт
Ещё вариант придумал. Вешаешь интерфейс на объект для записи (для того метода, который на чтение). А на read стороне маппить на тот же объект, но с другим интерфейсом Это лучше варианта с функцией, потому что внутри может быть какой-нить VO с интерфейсом и в случае функции нужно будет полиморфизм руками прописывать, а так маппинг по типам раскидает и будет настоящий полиморфизм
Мне кажется что то не очень. бизнес объект перегружен будет данными и логикой для чтения. Смысл как раз от этого уйти. Плюс могут быть приватные конструкторы или обязательные параметры в конструкторе. Какой то объект 2 в 1 получается.
Мы говорим про методы на чтение, которые нужны в write модели. Если этот метод есть в write модели - значит он там нужен и никакого перегруза нет. Тем более в "перегрузе" по идее нет ничего страшного. Важно что интерфейсы разные. При чём тут конструкторы я не понял, мне кажется, что они вообще никак не мешают
Обсуждают сегодня