* Images */ Route::get('images/search', ['as' => 'images.search', 'uses' => 'ImagesController@search']); Route::bind('images', function ($id) { return App\Image::with('products')->findOrFail($id); }); Route::resource('images', 'ImagesController'); /** * ======================================================== * Products */ Route::get('products/search', ['as' => 'admin.products.search', 'uses' => 'ProductsController@search']); Route::get('products/{slug}/images', ['as' => 'admin.products.edit_images', 'uses' => 'ProductsController@editImages']); Route::post('products/{slug}/images', ['as' => 'admin.products.update_images', 'uses' => 'ProductsController@updateImages']); Route::bind('products', function ($slug) { return App\Product::whereSlug($slug)->with('images')->firstOrFail(); }); Route::resource('products', 'ProductsController'); /** * =========================================================== * Profiles */ Route::post('profiles/image/{id}', ['as' => 'admin.profiles.image', 'uses' => 'ProfilesController@postImage']); Route::bind('profiles', function ($id) { return App\Profile::findOrFail($id); }); Route::resource('profiles', 'ProfilesController', ['except' => 'destroy']); /** * ================================================================================= * Roles */