身份验证已登录flash消息-Laravel 5.1


Authentication logged in flash message - Laravel 5.1

我使用的是laravel的内置身份验证。我想显示一条已登录的快闪消息。但似乎找不到该放在哪里。

我曾尝试在Authenticate中间件中设置它,但似乎不起作用。

尝试过这个:

$request->session()->flash('messages', ['message' => ['status' => 'success', 'text' => 'Successfully logged in']]);

和:

 Session::flash('messages', ['message' => ['status' => 'success', 'text' => 'Successfully logged in']]);

但是:dd(Session::get('messages'))为空。

完整示例:

public function handle($request, Closure $next)
{
    if ($this->auth->guest()) {
        if ($request->ajax()) {
            return response('Geen toegang.', 401);
        } else {
            return redirect()->guest('/'.config('constants.cms_path').'/'.config('constants.login_path'));
        }
    }
    Session::flash('message', ['message' => ['status' => 'warning', 'text' => 'Successfully logged in']]);
    return $next($request);
}

如何设置成功登录的flash消息?

编辑

消息正在工作,但每次都已设置。只想在登录一次时设置它。

use Session;

将此行添加到访问会话类

在控制器中设置会话

Session::flash('message', "Colon Success");

并在视图中打印您的会话

<?php
    if (Session::has('message')){
        echo Session::get('message')  ;
    }
?>

如果你把它放在Authenticate中间件中,并将这个中间件用于url,那么每次运行这个中间件时都会使用这个中间件,这是你不想要的。

您需要在用户登录(可能在控制器中)的操作中添加闪烁消息