Laravelで権限に応じて表示を分ける方法【@auth】

Laravelで、例えばUsersテーブルに権限を表すroleカラムを追加して、roleの値が1だった場合は管理者とみなしてbladeの処理を実行する場合は以下のように記述します。

@auth
@if (auth()->user()->role === 1)
// roleカラムが1のユーザだけ実行される処理
@endif
@endauth

またはGateを使う方法もあります。

public function boot()
{
    Gate::define('isAdmin', function (User $user) {
        return $user->role === 1;
    });
}
@can ('isAdmin')
// roleカラムが1のユーザだけ実行される処理
@endcan

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)