представь визуально свою сущность и как она инициализируется из параметров конструктора, вот приблизительное такое должно вернутся с базы иначе придется использовать гидраторы/кастомные мапперы
крч, представь что у тебя твоя сущность может инициализироваться из некого набора данных можешь наворотить статических конструкторов что бы было проще аля Post::empty() ->setTitle(asd) etc но инициализация так или иначе объекта будет после ретрива данных с репоса и оч примитивно вызова Post::fromSomething($data) либо какого-нить вызова array_map(fn(array $data) => new Post($data), $dbResults) // PostCollection
PostRepository::find/findOne/delete/etc судя по тому какие вопросы ты задаешь можешь туда и save() нахуярить, потом через пару лет прочитаешь почему это не оч круто)
но еще раз, репос делает все что связанно с ретривом/удалением/обновлением данных и на границах возвращает твою модельку
PostRepository::find(1) // Post instance PostRepository::find([1,2,3,4,5]) // Collection<Post> PostRepository::delete($post) where $post is Post instance ну и так далее
но еще раз, репос делает все что связанно с ретривом/удалением/обновлением данных и на границах возвращает твою модельку
PostRepository::find(1) // Post instance PostRepository::find([1,2,3,4,5]) // Collection<Post> PostRepository::delete($post) where $post is Post instance ну и так далее