Probamos Ubuntu 25.04 - Muy rápido y confiable !!
Hola amigos comeremos con la maravillosa parte dos de nuestro carrito de compras
Nuestro trabajo ahora será muy simple de verdad!!
Paso 1 - Crear, editar y eliminar funcionalidades para un producto
Para cada producto hay un botón de eliminación (icono de papelera) y un botón de edición (icono de lápiz). Estos dos botones son responsables de las tareas que significan sus propios nombres. Ya hemos configurado las rutas para estas funcionalidades en el archivo routes/web.php . Ábrelo y agrega las siguientes rutas.
Route :: post ('/ update', 'CartController @ update') -> nombre ('cart.update');
Route :: post ('/ remove', 'CartController @ remove') -> nombre ('cart.remove');
Paso 2 - Abra CartController.php y simplemente agregue el siguiente código
public function remove(Request $request){
\Cart::remove($request->id);
return redirect()->route('cart.index')->with('success_msg', 'Item is removed!');
}
public function update(Request $request){
\Cart::update($request->id,
array(
'quantity' => array(
'relative' => false,
'value' => $request->quantity
),
));
return redirect()->route('cart.index')->with('success_msg', 'Cart is Updated!');
}
La función Eliminar toma el ID de la solicitud entrante y luego se pasa a la función del paquete Cart llamada eliminar . Luego, la ruta se redirige a la página del carrito con un mensaje de alerta que indica que el producto se eliminó. Dentro de la función de actualización, tenemos que realizar una actualización solo para cambiar el valor de la cantidad . Por lo tanto, toma la cantidad de la solicitud y la envía a la función de actualización del paquete del carrito . Como dije antes, enrutarnos y luego redirigir.
Paso 3 - Eliminar todos los productos del carrito de una vez, para eso abra el archivo archivo routes/web.php y agrege la ruta siguiente
Route::post('/clear', 'CartController@clear')->name('cart.clear');
Entonces solo tenemos que agregar solo 2 líneas para la implementación de CartController . ¡Esa es la magia de los paquetes de Laravel, chicos ! Siempre simplifican las implementaciones para los desarrolladores y reducen la carga de trabajo. Abra CartController.php y modifique el código
public function clear(){
\Cart::clear();
return redirect()->route('cart')->with('success_msg', 'Car is cleared!');
}
brillante, pero espero por la parte de checkout
ResponderEliminarGracias Lewis, tu sabes que de tanto batallar con las restricciones de Uruguay lo que hago básicamente es enviar un email en automático cuando la persona confirma la compra con el numero de la cuenta bancaria para que haga el deposito o el numero de alguna tarjeta de debito que te notifica en el celular cuando entra dinero, y le digo que notifique su deposito respondiendo el email, esto funciona muy bien en Uruguay ya que la única pasarela de pago que podemos usar es Paypal por el momento, Saludos y gracias por estar!!!!
EliminarGracias Lewis muy útil y oportuno el post
ResponderEliminarHola muy bueno el post, todo me funciono de maravilla. Pero quería saber como se hace la parte del checkout?.. esa parte nunca la he hecho y estoy un poco perdido.
ResponderEliminarHola, me alegro mucho!!! si esa parte hay muchas formas de hacerlo depende de cada país, si usas paypal que es lo mas usual necesitas una cuenta de negocios para que ellos te proporcionen el código, lo mas fácil para Sudamérica seria cuando completa la compra enviar un e-mail automáticamente con la compra y el numero de cuenta bancaria para que el usuario haga el deposito, y decirle que nos avise cuanto este echo, eso es lo que hacemos en un 95% de los casos aquí en Uruguay, ya que no hay muchas pasarelas de pago, saludos y gracias a ti por estar!!!
EliminarBuen día,
ResponderEliminarEstoy siguiendo tus videos en tu canal de youtube y recién estoy aprendiendo a manejar laravel. Tengo dos consultas que hacer, a ver si puedes ayudarme.
Me gustaría controlar el stock de cada producto con un campo stock en la tabla productos y posteriormente controlar que el cliente pueda comprar o no ese producto dependiendo de si está o no disponible en stock.
Mi segunda duda es acerca del carrito, me gustaría que permitiera poder pagar con otras opciones, tarjeta, transferencia, etc...
Muchas gracias por tu ayuda.