Ejemplo de proyecto rest.
Configuramos el proyecto en .env
- Tiendas
- Productos
- Ventas
Crearemos las tablas para nuestra base de datos, en laravel los conoceremos como migrations.
$ php artisan make:migration create_<name>_table
Tienda
Atributos:
- id
- nombre
- direccion
Producto
Atributos:
- id
- id_tienda
- nombre
- precio
- stock
Ventas
Atributo:
- id
- id_tienda
- productos
- total
A todas las tablas les agregamos softDelete que nos ayuda a manejar el borrado logico.
$table->softDeletes();
Migramos todas las tablas a la base de datos.
$ php artisan migrate
Creamos nuestros modelos.
$ php artisan make:model Models/<Nombre>
- Agregaremos SoftDeletes a los modelos para usar borrados logicos.
- Agregaremos la propiedad
$fillable
, que son los valores que pueden ser llenados desde una petición. - Creamos todas las relaciones.
Crearemos factories, para tener datos de prueba en nuestra base de datos.
$ php artisan make:factory <Name>Factory
Agregamos los factories a nuestro DatabaseSeeder.
$ composer dump-autoload
Creamos los controladores de tipo rest.
$ php artisan make:controller api/<version>/<Nombre>Controller --api
Agregamos las rutas.
Creamos request, que seran los encargados de validar las peticiones que recibiremos en nuestra api.
$ php php artisan make:request <Nombre><Metodo>Request
Crearemos un middleware para validaciones.