Php laravel-将三种不同的用户类型/角色重定向到不同的页面
我使用Laravel5.4,我想将这三种不同类型的用户重定向到不同的页面 模式Php laravel-将三种不同的用户类型/角色重定向到不同的页面,php,laravel,laravel-5,laravel-5.4,Php,Laravel,Laravel 5,Laravel 5.4,我使用Laravel5.4,我想将这三种不同类型的用户重定向到不同的页面 模式 我这样写代码 use Auth; public function redirectTo() { $superAdmin = Auth::user()->type_id = 1; $admin = Auth::user()->type_id = 2; $cashier = Auth::user()->type_id = 3; if ($superAdmin) {
我这样写代码
use Auth;
public function redirectTo()
{
$superAdmin = Auth::user()->type_id = 1;
$admin = Auth::user()->type_id = 2;
$cashier = Auth::user()->type_id = 3;
if ($superAdmin) {
return '/superAdmin/home';
}
elseif ($admin) {
return '/admin/home';
}
elseif ($cashier) {
return '/cashier/home';
}
}
但它总是重定向到“/superAdmin/home”,有人能告诉我什么是我的错吗
use Auth;
public function redirectTo()
{
$superAdmin = 1;
$admin = 2;
$cashier = 3;
if ($superAdmin == Auth::user()->type_id) {
return '/superAdmin/home';
}
elseif ($admin == Auth::user()->type_id) {
return '/admin/home';
}
elseif ($cashier == Auth::user()->type_id) {
return '/cashier/home';
}
}
尝试此操作您需要将
type_id
与某些值进行比较,例如:
public function redirectTo()
{
if (auth()->user()->type_id === 1) {
return '/superAdmin/home';
} elseif (auth()->user()->type_id === 2) {
return '/admin/home';
} elseif (auth()->user()->type_id === 3) {
return '/cashier/home';
}
}
另外,喜欢1、2和3也是个好主意。试着理解您在代码中编写的内容 您正在将1分配给$supseadmin以及 auth::User()->type\u id 然后在您正在检查的if条件下 如果($superadmin){} 表示如果(1){} 然后,这种类型的if条件只需检查数据是否存在,然后它就会进入if语句体,在那里返回
对于超级管理员我已经尝试了所有建议,但我的问题仍然与我在此处解释的相同。你能帮助我吗?我认为你的建议与我从其他人那里尝试的建议相同,但我的问题仍然与我在此处解释的相同。你能帮助我吗?我认为你正在为每个用户获得角色类型1。在if循环之前将die放入redirect-redirect_-to方法,并检查每个用户的用户角色类型
public function redirectTo()
{
if (auth()->user()->type_id === 1) {
return '/superAdmin/home';
} elseif (auth()->user()->type_id === 2) {
return '/admin/home';
} elseif (auth()->user()->type_id === 3) {
return '/cashier/home';
}
}