【Laravel】どの画面でも認証済みユーザーとリレーションしている情報を取得する方法。

概要

Laravelの認証でリレーションが使える。
モデル同士でhasMany<->belongsToなどのリレーションを定義してある前提

画面のどこでもアクセスできるようにApp Providerでview composerを使用した。
 

Controller

class AppServiceProvider extends ServiceProvider
{
    public function boot()
    {
        view()->composer('*', function($view) {
            $view->with('user', auth()->user());
        });
    }
}

 

view

{{ $user->name }}
// ログイン中ユーザー名取得

{{ $user->pref->name }}
// ログイン中ユーザーと紐づく都道府県名取得
管理ユーザー / 2018-08-30 / 161 / 0
このエントリーをはてなブックマークに追加

まだコメントがついていません。

ログイン不要でコメントの投稿ができます。