In Laravel 5.2 I added my event listener (in app\Providers\EventServiceProvider.php ), for example:
protected $listen = [ 'Illuminate\Auth\Events\Login' => ['App\Listeners\UserLoggedIn'], ];
Then generated:
php artisan event:generate
Then, in the Event Listener file app/Listeners/UserLoggedIn.php it looks like this:
<?php namespace App\Listeners; use App\Listeners\Request; use Illuminate\Queue\InteractsWithQueue; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Auth\Events\Login; class UserLoggedIn { public function __construct() { } public function handle(Login $event, Request $request) { $request->session()->put('test', 'hello world!'); } }
This shows me the following errors:
ErrorException in UserLoggedIn.php line 28: Argument 2 passed to App\Listeners\UserLoggedIn::handle() must be an instance of App\Listeners\Request, none given
What have I missed, or how can I solve this?
- Ultimately, I need to write in Laravel sessions after the user logs in.
Thanks to everyone.
ๅค ๆ ๅๅ ด
source share