. , Laravel , , , . , .
:
- , , - , , cookie , .
, Laravel , , . , . , , , . , :
1. , SyncShoppingCart, Illuminate\Auth\Events\Login ( \\ ):
php artisan make:listener SyncShoppingCart --event=Illuminate\\Auth\\Events\\Login
2. app/Listeners SyncShoppingCart.php. handle . , cart_item, , , CartItem, . , , :
public function handle(Login $event)
{
foreach (session()->get('cart') as $item) {
$cartItem = new App\CartItem();
$cartItem->user_id = Auth::id();
$cartItem = $item->product_id;
$cartItem->save();
}
session()->forget('cart');
}
3. app/Providers/EventServiceProvider.php $listen:
protected $listen = [
...
'Illuminate\Auth\Events\Login' => [
'App\Listeners\SyncShoppingCart',
],
];
, , App\Listeners\SyncShoppingCart::handle . , , , . , , .
, Events Laravel.