2016-09-05 57 views
0

如果用戶未通過身份驗證,是否可以創建一些會自動包含的用戶?例如,如果我在控制器中調用$request->user(),我將得到NULL。我想在這種情況下獲得一些默認的用戶模型(也許應用程序\用戶id = 0的實例)。我需要它,因爲我想通過entrust模塊爲訪客用戶添加一些角色和權限。如何爲lavarel 5中的訪客用戶設置默認用戶?

回答

1

如果用戶沒有通過身份驗證,則可以添加一個簡單的中間件,用於將用戶身份驗證爲訪客。下面的代碼應該做的伎倆:

class LoginAsGuest { 
    public function handle($request, Closure $next) 
    { 
    if (!Auth::id()) { 
     Auth::loginUsingId($guestUserId); 
    } 
    } 
} 

確保該中間件跑最後一棒,使用戶必須使用其會話/ cookie數據進行驗證的機會。

相關問題