2015-07-18 123 views
3

我想添加一個會話成功消息,當用戶登錄。Laravel 5.1登錄會話消息

我試着添加以下的AuthenticatesUsers.php特質postLogin():

if (Auth::attempt($credentials, $request->has('remember'))) { 
    return $this->handleUserWasAuthenticated($request, $throttles)->withSuccess("message"); 
} 

我也嘗試添加到handleUserWasAuthenticated():

return redirect()->intended($this->redirectPath())->withSuccess("message"); 

我跑作曲家在每次更改後dump-autoload,但它不會在視圖中刷新消息。我使用了一個叫做局部和success.blade.php內容是:

@if (Session::has('success')) 
    <div class="alert alert-success"> 
     <button type="button" class="close" data-dismiss="alert">&times;</button> 
     <strong> 
      <i class="fa fa-check-circle fa-lg fa-fw"></i> Success. &nbsp; 
     </strong> 
     {{ Session::get('success') }} 
    </div> 
@endif 

我想我失去了一些東西,但我不覺得有什麼,此刻所以希望有一個新的一雙眼睛。

預先感謝您。

+1

您是否嘗試在獲取部分視圖之前進行調試?某處主視圖,之前你有子視圖,這樣做'{{DD(會話(「成功」))}}'檢查,看是否存在有 –

+0

謝謝@AndrewMalinnkov的幫助。雖然沒有必要,但我沒有想到這一點,並將在未來記住。 – Flyingearl

回答

3

不要使用->withSuccess()

使用->with('success', 'Success message'),如http://laravel.com/docs/5.1/responses#redirecting-with-flashed-session-data描述,或使用會話管理器。要訪問會話管理器,您可以使用Request對象:

$request->session()->flash('success', 'Success message'); 

http://laravel.com/docs/5.1/session#flash-data。您還可以使用Session外觀訪問會話管理器:

Session::flash('success', 'Success message'); 
+0

謝謝。我確信我嘗試過,但由於某種原因,它昨天沒有工作。唯一的一點是session() - > flash();不支持重定向()。 – Flyingearl