В базе данных у меня есть таблица пользователей с колонкой last_login_at. Каждый раз, когда какой-то пользователь входит в систему, я хочу перевернуть last_login_at.Laravel 5.2 Вход в систему Управление событиями
Итак, я создал приложение/Слушатель/UpdateLastLoginOnLogin.php:
namespace App\Listeners;
use Carbon\Carbon;
class UpdateLastLoginOnLogin
{
public function handle($user, $remember)
{
$user->last_login_at = Carbon::now();
$user->save();
}
}
В приложении/Провайдеры/EventServiceProvider:
protected $listen = [
'auth.login' => [
'App\Listeners\UpdateLastLoginOnLogin',
],
];
НО это не работает, событие не обрабатываются , Та же проблема уже упоминалась здесь: EventServiceProvider mapping for Laravel 5.2 login, но без решения. Я пытался сделать так:
...
use Illuminate\Auth\Events\Login;
class UpdateLastLoginOnLogin
{
public function handle(Login $event)
{
$event->user->last_login_at = Carbon::now();
$event->user->save();
}
}
и:
protected $listen = [
'Illuminate\Auth\Events\Login' => [
'App\Listeners\UpdateLastLoginOnLogin',
],
];
Но это не работает.
Кроме того, я проверил это: https://laracasts.com/discuss/channels/general-discussion/login-event-handling-in-laravel-5, но php artiasn с ясной компиляцией не решила проблему.
EDIT: Для других деталей, здесь ссылка на проект, который на самом деле точно такой же (это делается точно так же): https://github.com/tutsplus/build-a-cms-with-laravel
Как вы войти пользователей в? –
@noodles_ftw Вот ссылка на проект, который на самом деле точно такой же (это делается точно так же): https://github.com/tutsplus/build-a-cms-with-laravel – PeraMika
Вы уволили его себя откуда угодно? –