LoginSignup
13
19

More than 3 years have passed since last update.

[Laravel-admin]ログインしているユーザ情報を取得する

Last updated at Posted at 2019-06-10

概要

Laravelの管理画面用のライブラリであるLaravel-adminのログインユーザの情報を取得する方法です。
探し方が悪かったのか、ドキュメントを見つけるのに少し手間取ったので忘備録です。
公式ドキュメントに記載があります。

名前空間の宣言

ファイル上部でLaravel-adminのAdminクラスの名前空間を宣言します。

use Encore\Admin\Facades\Admin;

関数一覧

その後、Adminクラスから得たいユーザの情報を取得します。

オブジェクト 
Admin::user() 現在のユーザーオブジェクトを取得する
Admin::user()->id 現在のユーザーIDを取得する
Admin::user()->roles ユーザーのRoleを取得する
Admin::user()->permissions ユーザーの権限を取得する
Admin::user()->isRole('developer') ユーザーがそのRoleであるかどうか
Admin::user()->can('create-post') ユーザーにその権限があるかどうか
Admin::user()->cannot('delete-post') ユーザーに権限がないかどうか
Admin::user()->isAdministrator() 管理者であるかどうか
Admin::user()->inRoles(['editor', 'developer']) ユーザがRolesのどれかに属するかどうか

確認例

xxxController.php
use Encore\Admin\Facades\Admin;

class xxxController extends Controller
{
   public function index(Content $content)
   {
      $user = Admin::user()->username;
      dd($user);
   }
}

最後に

記事に間違いや不明な点があれば遠慮なくご指摘ください。

13
19
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
19