注册外部链接时,我想显示一条消息:
if (!Auth::check()){
Session::flash('message', trans('msg.please_create_account_before_playing', ['tournament' => $tournament->name]));
return redirect(URL::action('Auth\LoginController@login'));
}
在我的登录页面中,我有:
@if (Session::has('message'))
<div class="alert alert-info">
<button type="button" class="close" data-dismiss="alert"><span>×</span><span class="sr-only">Close</span></button>
{{ Session::get('message') }}</div>
@endif
我使用laravel debugbar检查了我的登录页面,并且会话中没有消息var。 但它永远不会出现......
知道为什么它不起作用吗?
答案 0 :(得分:0)
在LoginController的登录方法中尝试dd(Session::has('message'));
。我怀疑这将返回true,如果是,则将其分配给消息变量,然后将该变量传递给视图。
遵循:
public function login() {
$message = Session::has('message') ? Session::get('message') : '';
return view('login', compact('message'));
}
然后在你看来:
@if (!empty($message))
<div class="alert alert-info">
<button type="button" class="close" data-dismiss="alert"><span>×</span><span class="sr-only">Close</span></button>
{{ Session::get('message') }}</div>
@endif
如果上述方法不起作用,我怀疑这可能与中间件有关。