你好我们正在使用laravel 5.1,我有重定向用户路径的问题。我有一个角色表,一个用户表和role_user表意味着数据透视表。每件事都很好但我没有重定向不同用户的页面。 。这是我的用户模型。我还没有创建任何中间件
public function roles()
{
return $this->belongsToMany('my\role');
}
public function hasRole($role)
{
if (is_string($role)){
return $this->roles->contains('name', $role);
}
return !! $role->intersect($this->roles)->count();
}
这是我的AuthController
:
public function redirectPath()
{
// Logic that determines where to send the user
if (\Auth::user()->hasRole('GlobalAdmin', 'SuperAdmin', 'CompanyAdmin', 'GroupAdmin'))
{
return '/adminpanel';
}
return '/dashboard';
}
当我以角色globleadmin
登录时,它工作正常并重定向到adminpanel但是当我作为另一个分配的角色登录时,它会重定向到仪表板。我没有得到它或许我在AuthController
中传递了参数:
if (\Auth::user()->hasRole('GlobalAdmin', 'SuperAdmin', 'CompanyAdmin', 'GroupAdmin'))
不正确。请帮帮我。
这是我的路线:
Route::get('/adminpanel', 'Admin\adminscontroller@index');
这是我的adminscontroller:
class adminscontroller extends Controller
{
public function __construct()
{
$this->middleware('auth');
}
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
return view('Admin.AdminPanel');
}
}
提前致谢。