Guardar carrito de compras en bbdd
Comprar curso

78. Guardar carrito de compras en bbdd


2 comentarios

Inicia sesión para comentar

Comentarios:

  • Marco A. Yanez

    Marco A. Yanez hace 10 meses

    Excelente Continuamos…

  • Kleyver

    Kleyver hace 10 meses

    hola vic como estas espero bien
    que sucede si no trengo el documento EventServiceProviders
    donde lo anexo el evento

    • Marco A. Yanez hace 10 meses

      Es muy extraño, El archivo EventServiceProvider se crea automáticamente cuando generas un nuevo proyecto Laravel. Se encuentra en app/Providers y se utiliza para registrar eventos y listeners. Puedes personalizarlo según las necesidades de tu aplicación para manejar diversos eventos y acciones correspondientes.

      este es su contenido: 

      ------

      <?php
      namespace App\Providers;
      use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider;
      use Illuminate\Support\Facades\Event;
      class EventServiceProvider extends ServiceProvider
      {
        protected $listen = [
             'App\Events\SomeEvent' => [
                 'App\Listeners\SomeListener',
             ],
         ];  
         public function boot()
         {
             parent::boot();
             //
         }
      }

      -----

      Si por alguna razón el archivo EventServiceProvider no está presente en tu proyecto, puedes crearlo manualmente dentro del directorio app/Providers y copiar el contenido mencionado anteriormente. no tengo precedente que te funciones sin problemas a futuro pero es la opción que veo mas viable…

    • Victor Arana Flores hace 10 meses

      Hola, en Laravel 11 no necesitas registrar los eventos con los oyentes.

      Lo que tienes que hacer es crear un oyente con este codigo

      php artisan make:listener RestoreCartItems

      Luego dirigete a tu listener y haz esto

      use Illuminate\Auth\Events\Login;
       
      class RestoreCartItems
      {
          /**
           * Handle the given event.
           */
          public function handle(Login $event): void
          {
              // ...
          }
      }

      En el listener al poner que se recibe el evento Login, es suficiente para que Laravel lo asocie con el evento.

    • Alfredo Romero hace 9 meses

      Holaa buenas noches, tengo el proyecto en laravel 11, hice este ultimo paso que mencionas de crear el oyente con el php artisan make:listener RestoreCartItems, en el event provider no escribo nada solo dejo el listener, al realizar eso, no me mantiene el registro al loguear de nuevo y me aparece un error de serializacion 

    • Aabad hace 1 mes

      hola tengo este error tambien , observo que en la base de datos no almacena la cadena completa

       

      Aunque laravel si la manda, no encuentro el error , podrias apoyarme para ver que puedo hacer en este caso .

      Scritp con la cadena de como laravel la envia 

      insert into "shoppingcart" ("identifier", "instance", "content", "created_at") values ( 1,"shopping","O:29:\"Illuminate\\Support\\Collection\":2:{s:8:\"\u0000*\u0000items\";a:1:{s:32:\"ca353efa52957ca6ec9afa0c888d4e99\";O:32:\"Gloudemans\\Shoppingcart\\CartItem\":9:{s:5:\"rowId\";s:32:\"ca353efa52957ca6ec9afa0c888d4e99\";s:2:\"id\";i:152;s:3:\"qty\";i:1;s:4:\"name\";s:3:\"Ali\";s:5:\"price\";d:36;s:7:\"options\";O:39:\"Gloudemans\\Shoppingcart\\CartItemOptions\":2:{s:8:\"\u0000*\u0000items\";a:3:{s:5:\"image\";s:83:\"http://ecommerce:8000/storage/products/6VhehWfqcvaKDKiMVpWmz7piE4Wzi2BOg9vGAwkF.png\";s:3:\"sku\";s:3:\"626\";s:8:\"features\";a:1:{i:12;s:6:\"Blanda\";}}s:28:\"\u0000*\u0000escapeWhenCastingToString\";b:0;}s:49:\"\u0000Gloudemans\\Shoppingcart\\CartItem\u0000associatedModel\";N;s:41:\"\u0000Gloudemans\\Shoppingcart\\CartItem\u0000taxRate\";i:21;s:41:\"\u0000Gloudemans\\Shoppingcart\\CartItem\u0000isSaved\";b:0;}}s:28:\"\u0000*\u0000escapeWhenCastingToString\";b:0;}","2025-04-09 21:54:32") 

    • Aabad hace 1 mes

      listo ya resolvi , aplique lo indicado en el link https://github.com/darryldecode/laravelshoppingcart/issues/160 , igual dejo la img