Correction d'un problème dans Laravel-8 en essayant de lire la propriété "id" sur null
P粉194919082
P粉194919082 2023-11-08 14:07:01
0
2
605

Cette erreur se produit lors de l'exécution php artisan migrate:fresh --seed Cette commande créera une table dans la base de données MySQL et remplira le fichier .env avec les détails de la base de données DB_DATABASE.

parent::boot();
    static::creating(function($model)
    {
    $user = Auth::user();
    model->created_by = $user->id ? $user->id : 1 ;
      });
      static::updating(function($model)
      {
       $user = Auth::user();```


Controller:


P粉194919082
P粉194919082

répondre à tous(2)
P粉786432579

Modifiez cette ligne :

model->created_by = $user->id ? $user->id : 1 ;

À ceci :

model->created_by = $user ? $user->id : 1 ;

Vous devez d'abord vérifier si $user est vide.

P粉478188786

Le problème ici est que $user 的值为 null 并且 null n’a aucune propriété.

$user 将始终为 null,而您的代码则为 Auth::user() 将是 null 。在执行播种程序期间,您没有经过身份验证的用户.

Si tu veux User 分配给您的 $model 并且您已为 User 表播种,您可以获得一个 用户这样.

$model->created_by = \App\Models\User::where('id', 5)->first();

Si vous ne voulez pas de 用户 spécifique, vous pouvez faire ceci :

$model->created_by = \App\Models\User::inRandomOrder()->first();
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal