php - metodos - route resource laravel 5
¿Cómo organizar diferentes controladores de API REST versionados en Laravel 4? (1)
Terminé usando espacios de nombres y directorios en app / controllers:
/app
/controllers
/Api
/v1
/UserController.php
/v2
/UserController.php
Y en los archivos UserController.php establezco el espacio de nombres en consecuencia:
namespace Api/v1;
o
namespace Api/v2;
Luego en mis rutas hice algo como esto:
Route::group([''prefix'' => ''api/v1''], function () {
Route::get(''user'', ''Api/v1/UserController@index'');
Route::get(''user/{id}'', ''Api/v1/UserController@show'');
});
Route::group([''prefix'' => ''api/v2''], function () {
Route::get(''user'', ''Api/v2/UserController@index'');
Route::get(''user/{id}'', ''Api/v2/UserController@show'');
});
No estoy seguro de que esta sea la mejor solución. Sin embargo, ha permitido la creación de versiones de los controladores de manera que no interfieran entre sí. Probablemente podrías hacer algo similar con los modelos si es necesario.
Sé que hay una forma de crear URL versionadas para las API REST con rutas, pero ¿cuál es la mejor manera de organizar los controladores y los archivos del controlador? Quiero poder crear nuevas versiones de API y seguir manteniendo las antiguas en ejecución durante al menos un tiempo.