Herramientas de usuario

Herramientas del sitio


informatica:programacion:php:frameworks:laravel:formularios

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
informatica:programacion:php:frameworks:laravel:formularios [2023/06/10 14:56] tempwininformatica:programacion:php:frameworks:laravel:formularios [2023/06/10 15:30] (actual) tempwin
Línea 191: Línea 191:
         </div>         </div>
     </form>     </form>
 +</code>
 +
 +Los navegadores solo procesan GET y POST, así que para forzar un tipo de petición, usamos ''@method'' que añadirá una etiqueta ''input'' oculta con el valor que le pasemos.
 +
 +Para realizar la actualización del producto, en el controlador:
 +
 +<code php>
 +public function update($product) 
 +{
 +    $product = Product::findOrFail($product);
 +    
 +    $product->update(request()->all());
 +    
 +    return $product;
 +}
 +</code>
 +
 +===== Eliminar de la base de datos =====
 +
 +En Laravel tenemos que usar un formulario también para eliminar productos. En nuestro controlador, modificaremos el método ''destroy'':
 +
 +<code php>
 +public function destroy($product) 
 +{
 +    $product = Product::findOrFail($product);
 +    
 +    $product->delete();
 +}
 +</code>
 +
 +Recordemos que debe existir una ruta:
 +
 +<code php>
 +Route::delete("products/{product}", "ProductController@destroy")->name("products.destroy");
 +</code>
 +
 +Finalmente, para dar la opción de eliminar un producto, basta con crear un enlace, pero debe ser usando el método DELETE:
 +
 +<code html5>
 +<form method="post" action="{{ route("products.destroy", ["product" => product->id]) }}">
 +    @csrf
 +    @method("DELETE")
 +    <button type="submit" class="btn btn-link">Delete</button>
 +</form>
 </code> </code>
informatica/programacion/php/frameworks/laravel/formularios.1686401804.txt.gz · Última modificación: por tempwin