Дмитрий Свиридов, ну вот смотри, ты инжектишь репозитерий в конструктор, вызываешь там метод ->getById($id) и отправляешь результат на рендер. Все. Ты ни привизался ни к ОРМ, ни к базе.
xmoonlight, ну в первую очередь не должно быть никаких <команда(метод)>, только сами сущности, состояния которых изменяется через POST/PUT/PATCH/DELETE запросы.
xmoonlight, возможно. Но автор просил рест-ресурсы. А поскольку вы не упомянули, что это не рест, то он мог бы сделать ложный вывод о том, что так и должны выглядеть рест-ресурсы.
TigerSHARC, да.
В проекте вообще не должно быть такой сущности, как "маленький вспомогательный скрипт". В конечном итоге разработчики вообще перестают думать, к чему отнести эту часть логики и сбрасывают все в utils, который превращается в настоящую кодопомойку.
Вот кстати не согласен. Имплементации репозиториев как раз таки относятся к сервисному слою, и как любой другой сервис может быть использован в контроллера (если речь идет только об извлечении данных для дальнейшего представления).