Diferencia entre revisiones de «Usuario:ManuelRomero/Laravel/practica crud/producto»

De WikiEducator
Saltar a: navegación, buscar
(Configuración de conexión a base de datos)
Línea 1: Línea 1:
 
===Configuración de conexión a base de datos===
 
===Configuración de conexión a base de datos===
 
*En este caso la base de datos la tenemos en un '''''docker'''''
 
*En este caso la base de datos la tenemos en un '''''docker'''''
*Modificamos el fichero '''''./.env'''''0
+
*Modificamos el fichero '''''./.env'''''
 
<source lang=php>
 
<source lang=php>
 
  DB_CONNECTION=mysql
 
  DB_CONNECTION=mysql
Línea 12: Línea 12:
 
*Estos parámetros se han de adaptar a la configuración que tengas sobre tu base de datos
 
*Estos parámetros se han de adaptar a la configuración que tengas sobre tu base de datos
 
  [[Usuario:ManuelRomero/Laravel/baseDatos| <font size=4>Ver configuración de bases de datos</font>]]
 
  [[Usuario:ManuelRomero/Laravel/baseDatos| <font size=4>Ver configuración de bases de datos</font>]]
 +
===Creación de la base de datos===
 +
*Las tablas '''''producto''''', '''''tienda''''', '''''stock''''', '''''familia''''' y existe, por lo que no  crearemos migración para crear las tablas de la base de datos. Sí lo haremos en la tabla de usuarios
 +
===Añadir las solicitudes en web.php===
 +
*A continuación vamos a analizar cada caso. No hay que realizar estas entradas, esto es para entenderlo, todas quedarán creadas agregando en el fichero la ruta
 +
<source lang=php>
 +
Route::resource("producto", "ProductoController");
 +
</source>
 +
 +
Queremos hacer un CRUD. vamos a ver qué solicitudes necesitamos
 +
;Create
 +
esta acción va a implicar dos acciones
 +
1.- El usuario presiona un botón de crear un regsitro
 +
Solicitud '''get''' a un método '''create''' que entrega un formulario
 +
<source lang=php>
 +
Route::get("producto/create","ProductoController@create")->name("producto.create");
 +
</source>
 +
*LA ruta creada la vamos a poner un nombre para referenciarla más cómodamente
 +
2.- El usuario rellena los datos y presiona el submit del formulario
 +
Solicitud '''post''' a un método '''store''' que almacenará los datos del formulario en la base de datos
 +
<source lang=php>
 +
Route::post("producto/store","ProductoController@store")->name("producto.store");
 +
</source>
 +
;Read
 +
*Esta acción puede ser visualizar un registro (show), o visualizar (index) todos
 +
*En el primer caso será una solicitud '''''get''''' que atenderá el método '''''index'''''
 +
<source lang=php>
 +
Route::get("producto","ProductoController@index")->name("producto.index");
 +
</source>
 +
*En el segundo caso será una solicitud '''''get''''' pasándo el código de producto que quiero ver  al método '''''show'''''
 +
*Estamos creando rutas parametrizadas
 +
<source lang=php>
 +
Route::get("producto/{producto}","ProductoController@show($producto)")->name("producto.index");
 +
</source>
 +
;Update
 +
;Delete

Revisión de 03:19 5 mar 2020

Configuración de conexión a base de datos

  • En este caso la base de datos la tenemos en un docker
  • Modificamos el fichero ./.env
 DB_CONNECTION=mysql
 DB_HOST=172.17.0.2
 DB_PORT=3306
 DB_DATABASE=dwes
 DB_USERNAME=root
 DB_PASSWORD=root
  • Estos parámetros se han de adaptar a la configuración que tengas sobre tu base de datos
 Ver configuración de bases de datos

Creación de la base de datos

  • Las tablas producto, tienda, stock, familia y existe, por lo que no crearemos migración para crear las tablas de la base de datos. Sí lo haremos en la tabla de usuarios

Añadir las solicitudes en web.php

  • A continuación vamos a analizar cada caso. No hay que realizar estas entradas, esto es para entenderlo, todas quedarán creadas agregando en el fichero la ruta
 Route::resource("producto", "ProductoController");

Queremos hacer un CRUD. vamos a ver qué solicitudes necesitamos

Create
esta acción va a implicar dos acciones

1.- El usuario presiona un botón de crear un regsitro

Solicitud get a un método create que entrega un formulario
 Route::get("producto/create","ProductoController@create")->name("producto.create");
  • LA ruta creada la vamos a poner un nombre para referenciarla más cómodamente

2.- El usuario rellena los datos y presiona el submit del formulario

Solicitud post a un método store que almacenará los datos del formulario en la base de datos
 Route::post("producto/store","ProductoController@store")->name("producto.store");
Read
  • Esta acción puede ser visualizar un registro (show), o visualizar (index) todos
  • En el primer caso será una solicitud get que atenderá el método index
 Route::get("producto","ProductoController@index")->name("producto.index");
  • En el segundo caso será una solicitud get pasándo el código de producto que quiero ver al método show
  • Estamos creando rutas parametrizadas
 Route::get("producto/{producto}","ProductoController@show($producto)")->name("producto.index");
Update
Delete