Padosoft created a good package which provides a trait that will automatic handling upload when saving/updating/deleting any Eloquent model.

laravel uploadable