说到权限控制,我先按照我的理解说一下,例如,现在有一个文件上传的功能,第一个我们需要判断该用户是否登录了,第二我们需要判断该登录用户是否有上传文件的权限,第三我们需要判断用户上传的文件的合法性。根据以上三点,代码如下
$user = Auth::user();
//登录状态检查
if (empty($user)){
return Redirect::to("/auth/login")
->withErrors(["login.failed" => "请先登录"]);
//授权检查
}elseif($user->type == 0){
return Redirect::to("/auth/login")
->withErrors(["login.failed" => "禁止越权使用"]);
//用户提交数据合法性检查
}else {
$rules = [
'title' => "required|max:200",
'content' => "required|max:2000",
'movie_id' => "required|numeric",
'photo' => "required|image",
]; ...
}
PS:
其中授权检查需要在数据库用户表中设计type字段