Comment ajouter une nouvelle valeur à la fonction « auth() » après la connexion ?
P粉354948724
P粉354948724 2023-09-03 13:18:05
0
1
396
<p>Je développe un projet utilisant Laravel 8. </p> <p>Il y a certains champs dans ma table Utilisateurs, tels que "us_name", "us_surname". Une fois l'utilisateur connecté, je peux obtenir ces valeurs via "auth()->user()->us_name" etc. Jusqu'à présent, aucun problème. </p> <p>Ce que je veux faire, c'est ajouter ici des valeurs qui ne sont pas dans mon tableau. Par exemple, après vous être connecté, combinez le prénom et le nom et ajoutez un nouveau champ appelé "us_fullname" et accédez-y via "auth()->user()->us_fullname". Comment puis-je faire ceci? </p>
P粉354948724
P粉354948724

répondre à tous(1)
P粉351138462

Vous pouvez obtenir le modèle authentifiable auprès de la garde par défaut en appelant auth()->user().

Jetons un coup d'œil au config/auth.php par défaut

<?php

return [
    'defaults' => [
        'guard' => 'web',
        'passwords' => 'users',
    ],
    'guards' => [
        'web' => [
            'driver' => 'session',
            'provider' => 'users',
        ],

        'api' => [
            'driver' => 'token',
            'provider' => 'users',
            'hash' => false,
        ],
    ],
    'providers' => [
        'users' => [
            'driver' => 'eloquent',
            'model' => App\Models\User::class,
        ]
    ]
];

Avec cette configuration Laravel par défaut, vous obtenez :

  1. La garde par défaut est web
  2. web守卫提供者(提供Authenticatable)是usersGuard Provider (fournissant
  3. ) est
  4. users
  5. Le fournisseur fournit AppModelsUser::classAuthenticatable
  6. AppModelsUser implémente le
Contract

auth()->user()

Ensuite, en appelant

- vous obtiendrez une instance de AppModelsUser::class ou null

Répondez à vos questionsfull_name),并将其作为auth()->user()->full_name

Vous pouvez ajouter n'importe quoi au modèle utilisateur (comme

Récupération En savoir plus sur les

Accessoires🎜 - en l'utilisant, vous pouvez simplement ajouter des propriétés calculées : 🎜
class User extends Authenticatable
{
  public function getFullNameAttribute()
  {
     return "{$this->first_name} {$this->last_name}";
  }
}
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal