11/08

11/08

php artisan make:policy PostPolicy

if--> 모델이랑 연관해서 만들기

php artisan make:policy PostPolicy --model=Post

eloquent class name

public function viewAny(User $user)

{

//볼 자격이 되는지? 가능- true 불가 - false

}

public function view(User $user, Post $post)

{

//특정 사용자가 특정 게시글 볼수있는지? return true/false

}

등록

App\Provider\AuthServiceProvider에서

protected $policies = [

// 'App\Models\Model' => 'App\Policies\ModelPolicy',

Post::class => PostPolicy::class,

];

안에 ,

모델 => 정책

등록.

Request $request

di.dependency injection의존성 주입

if ($request->user()->cannot('update', $post)) {

abort(403);

}

cannot-> policy 의 function 명 -> 결과.

$this->authorize('delete', $post);

Authorize a given action for the current user.

$post 객체와 연계된 policy 의 메서드

or blade 템플릿 에서. 권한제어 (블레이드 템플릿도 서버에서 만드는거라 동적으로 html 에서 생성가능)

from http://habbang0.tistory.com/103 by ccl(A) rewrite - 2021-11-08 16:00:36