自定义重定向登录 Laravel
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;
我收到这个错误:
syntax error, unexpected '$redirectAuth' (T_VARIABLE), expecting
function (T_FUNCTION) or 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';
然后向 LoginController 添加一个新方法 redirectTo()
。 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';
}
}
我正在尝试设置一个规则,如果用户是 Worker
或 Auditor
并登录,他将被重定向到 /post
,否则他将被重定向到 /charts
。在我的默认 LoginController.php
中,我试图做这样的事情:
$redirectAuth = Auth::user()->user_type = 'Worker' || Auth::user()->user_type = 'Auditor'
? '/post'
: '/charts';
protected $redirectTo = $redirectAuth;
我收到这个错误:
syntax error, unexpected '$redirectAuth' (T_VARIABLE), expecting function (T_FUNCTION) or 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';
然后向 LoginController 添加一个新方法 redirectTo()
。 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';
}
}