[英]Customized redirect login Laravel
我正在嘗試設置一個規則,如果用戶是Worker
或Auditor
並登錄,則該用戶將被重定向到/post
否則將被重定向到/charts
。 在我的默認LoginController.php
,我嘗試執行以下操作:
$redirectAuth = Auth::user()->user_type = 'Worker' || Auth::user()->user_type = 'Auditor'
? '/post'
: '/charts';
protected $redirectTo = $redirectAuth;
我收到此錯誤:
語法錯誤,意外的'$ redirectAuth'(T_VARIABLE),預期函數(T_FUNCTION)或const(T_CONST)
我在這里輸入錯誤嗎? 感謝您的答復。
編輯:
在@Karl Hill的幫助下,我能夠創建自己的自定義登錄名:
public function redirectTo()
{
$userType = auth()->user()->user_type;
return $userType == 'Worker' || $userType == 'Auditor' ? '/charts' : 'brethren';
}
但是當然,這也可以:
switch ($type) {
case 'Worker':
case 'Auditor':
return '/charts';
default:
return '/post';
}
無論您的編碼偏好是哪個。
在LoginController中,刪除以下行。
protected $redirectTo = '/home';
然后將新方法redirectTo()
添加到LoginController。 redirectTo()
方法優先於redirectTo
屬性。
public function redirectTo()
{
$type = auth()->user()->user_type();
// Check user type
switch ($type) {
case 'Worker':
return '/post';
case 'Auditor':
return '/charts';
default:
return '/login';
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.