Repository pattern
I spoke about the fat models, skinny controllers pattern, but what I failed to explain is what is the model. For example, in Laravel, you have model classes which define the link between an object and the database, it's the Eloquent ORM configuration.
Fat models is not about putting all the database logic inside those Eloquent classes. Models here, refers to all the classes (object, services...) which makes your app. So we should use the repository pattern to store the logic and make our controllers skinnier.