是这样的,我需要在控制器的不同方法检查不同的权限, 我应该如何返回这些提示。
public function create()
{
// 这里我如何在检查出权限不足,返回上一页?
$this->checkPermission('create admin');
$roles = Role::where('guard_name', 'admin')->get();
return view('admin.admins.create', compact('roles'));
}
public function edit(Admin $admin)
{
$this->checkPermission('edit admin');
$roles = Role::where('guard_name', 'admin')->get();
return view('admin.admins.edit', compact('admin', 'roles'));
}
private function checkPermission($permission)
{
if (! $this->guard()->user()->can($permission)) {
return back()->with('status', '权限不足');
}
}
觉得如果每一个方法都写if
有点那什么。有没有更优雅的处理方法?
梵蒂冈之花
RISEBY
沧海一幻觉