ログイン後に「auth()」関数に新しい値を追加するにはどうすればよいですか?
P粉354948724
2023-09-03 13:18:05
<p>Laravel 8 を使用してプロジェクトを開発しています。 </p>
<p>Users テーブルには、「us_name」、「us_surname」などのフィールドがいくつかあります。ユーザーがログインすると、「auth()->user()->us_name」などを介してこれらの値を取得できます。今のところ問題はありません。 </p>
<p>私がやりたいのは、テーブルにない値をここに追加することです。たとえば、ログイン後、姓と名を組み合わせて「us_fullname」という新しいフィールドを追加し、「auth()->user()->us_fullname」経由でアクセスします。これどうやってするの? </p>
auth()->user()
を呼び出すことで、デフォルト ガードから認証可能モデルを取得できます。デフォルトの config/auth.php
を見てみましょう。 リーリーこのデフォルトの Laravel 構成では、次のようになります:
web
web
ガード プロバイダー (Authenticatable
を提供) はusers
users
プロバイダーは App\Models\User::classAuthenticatable
Contract次に、
のインスタンスを取得します。auth()->user()
を呼び出すと、App\Models\User::class または null質問に答えてください
ユーザー モデル (例:
full_name
) に何かを追加し、それをauth()->user()->full_name
として取得できます。Accessors について読む - これを使用すると、計算されたプロパティを簡単に追加できます: リーリー