Laravel 5.4: Comenzando API. CRUD Usuarios
By ercobo | Published | No hay comentarios
Continuamos con este “cursillo – aprendizaje” sobre crear una aplicación con Laravel y Angular.
Lo primero con lo que vamos a comenzar es con las operaciones CRUD básicas para los usuarios de la aplicación.
Lo primero será crear el controlador que usaremos para estas funciones, para lo que será necesario ejecutar el siguiente comando:
1 |
php artisan make:controller UsersController –resource |
Con el modificador –resource conseguiremos que nos cree el controlador con un esqueleto basico de todas las funciones básicas para el manejo de los usuarios (aparte de las CRUD, las necesarias para manejar las vistas y formularios relacionados con la creación, update, etc).
Una vez conseguido esto, editaremos el archivo routes\web.php y añadiremos lo siguiente:
1 2 3 4 5 |
Route::resource( 'users', 'UsersController', ['only' => ['index', 'store', 'update', 'destroy', 'show']] ); |
(si, de momento lo vamos a meter en la ruta web, para irlo probando, más adelante lo ingresaremos en una api con autenticación).
Con este código conseguimos que se reconozcan las rutas necesarias para las operaciones. Como en este caso estamos creando una api que no tendrá “vistas” (formularios o webs que ver) podemos obviar rutas y decirle que únicamente utilice las relativas al CRUD.
También hemos de crear el modelo. En este momento voy a ir creando modelos (aunque se pueden usar factorías y demás opciones, eso ya lo dejo de momento a la investigación de cada uno, o para más adelante). Para ello el comando es
1 |
php artisan make:model Models/Users |
Nota: un apunte, si ejecutamos directamente el comando de crear modelo con el modificador resource, como en el controlador, ya nos creara el modelo y el controlador enlazados (lo cual nos agilizará un poco estos pasos)
Y ahora hay que meterse en harina.
Con el siguiente comando podemos ver una lista de las rutas que están incluidas en este momento. Así veremos los métodos y opciones que se van a utilizar para las operaciones.
1 |
php artisan route:list |
Y ahora se tratará de ir modificando las funciones en el controlador y o el modelo para ir adaptando el control de usuarios.
Dejo por ejemplo el código (sin finalizar) de la función de guardar un usuario
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
public function store(Request $request) { // try{ $user =new Users(); $user->usuario = $request->name; $user->email = $request->email; $user->clave = bcrypt($request->password); $user->api_token= str_random(60); $user->save(); $result=[ 'usuario'=>$user->usuario, 'email'=>$user->email, 'created' => true ]; return $result; } catch(Exception $e){ return "Error fatal - ".$e->getMessage(); } } |
Tras modificar todas las funciones, estaremos listos para el siguiente paso