Laravel Model->save() renvoie la valeur faux, mais pas d'erreur
Normalement quand je l'appelle Model->save()
, elle crée un nouvel enregistrement dans la base de données avec succès. Je suis en train de déboguer une situation où rien ne se passe et Model->save()
renvoie la valeur false. Comment puis-je savoir ce qui se passe?
$user = new User;
$user->fields = 'example';
$user->save(); //returns false
L'exécution de ce qui ne présentent pas toutes les requêtes de type insert.
dd(DB::getQueryLog());
Mais si je var_dump($user)
, je obtenez correctement tous les champs correctement enregistré dans l'objet.
Merci!
Event::listen('illuminate.query', function($query, $bindings, $time) { error_log($query); });
essayez ceci pour vérifier la requête.- Entendez-vous obtenir de savoir quand l'erreur de mise à jour?
Vous devez vous connecter pour publier un commentaire.
Pour obtenir les requêtes de type insert lorsque
$user->save();
d'erreur, vous pouvez essayer d'attraper l'exception comme ceci:Espère que cela aide 🙂
(\Exception $e)
parce que sinon il va penser que vous êtes à la recherche pour la classe d'Exception dans cet espace de noms. (Sauf si vous écrivezuse Exeption
)save()
méthode renvoie false, donc ne déclenche pas une exception.Si vous voulez juste de s'échapper sans savoir ce qui se passe, vous pouvez essayer ce,