Принято ли в Laravel для каждой модели создавать контроллер?
==============================================================

 Допустим, у меня две таблицы users и photos. Пользователь загружает фотографии в свой профиль. Нужно ли мне создавать PhotoController или добавление фотографий можно реализовать в UserController? В каких случаях модели нужен свой собственный контроллер, а в каких нет? 

 Контроллер является связующим звеном между действиями пользователя и логикой приложении, поэтому необходимо в первую очередь ориентироваться на те действия, которые совершает пользователь. Если речь идет об обработки фото редактирование то должен быть PhotoController с методом edit() и т.п. Если речь идет о изменении имени пользователя, то это событие должен обработать UserController.   

Создавать для того, что бы было контроллер конечно не надо. 

 Зачем ЮзерКонтроллеру что-то знать об обработке фото?  

Делаешь отдельный контроллер для фото и все, там уже что хочешь в нем пишешь, но только что касается фото.  

Если тебе нужно будет ресайзить изображение или как-то работать с ним, то твой юзер контроллер превратится в кашу, если ты будешь лепить все в один контроллер.   

Юзер контроллер на то и юзер, что в нем описывают все что касается юзера.  

Да и вообще это вопрос архитектуры кода в целом, а не Laravel или PHP