group(['prefix' => '/restaurantes'], function () use ($router) { // Rutas del recurso $router->get('/', ['as' => 'restaurant.all', 'uses' => 'RestaurantesController@all']); $router->get('/{id}', ['as' => 'restaurant.get', 'uses' => 'RestaurantesController@get']); $router->post('/', ['as' => 'restaurant.create', 'uses' => 'RestaurantesController@create']); $router->put('/{id}', ['as' => 'restaurant.update', 'uses' => 'RestaurantesController@update']); $router->delete('/{id}', ['as' => 'restaurant.delete', 'uses' => 'RestaurantesController@delete']); }); } function registerUserApi($router) { $router->group(['prefix' => '/users'], function () use ($router) { // Rutas del recurso $router->get('/', ['as' => 'users.all', 'uses' => 'UsuariosController@all']); $router->get('/{id}', ['as' => 'users.get', 'uses' => 'UsuariosController@get']); $router->post('/', ['as' => 'users.create', 'uses' => 'UsuariosController@create']); $router->put('/{id}', ['as' => 'users.update', 'uses' => 'UsuariosController@update']); $router->delete('/{id}', ['as' => 'users.delete', 'uses' => 'UsuariosController@delete']); // Rutas de acciones $router->put('/{id}/restaurantes/{restaurant}', ['as' => 'users.add_to_restaurant', 'uses' => 'UsuariosController@addToRestaurant']); $router->delete('/{id}/restaurantes/{restaurant}', ['as' => 'users.remove_from_restaurant', 'uses' => 'UsuariosController@removeFromRestaurant']); }); } /** @var Router $router */ $router->get('/', function () use ($router) { return 'Public View'; }); $router->group(['prefix' => 'api/v1', 'middleware' => ['auth', 'log_endpoint']], function () use ($router) { registerUserApi($router); });