web-dev-qa-db-fra.com

Laravel - recherche par colonne personnalisée ou échec

Il existe une méthode findOrFail() qui renvoie 404 si rien n'a été trouvé, par exemple:

User::findOrFail(1);

Comment puis-je trouver une entité par colonne personnalisée ou échouer, quelque chose comme ceci: 

Page::findBySlugOrFail('about');
40
Limon Monte

Essayez comme ça:

Page::where('slug', '=', 'about')->firstOrFail();
87
Alupotha

Il a fallu au moins deux heures pour que nous réalisions que si vous chaîniez la méthode firstOrFail () après where () dans Laravel 5.6 , le système tente de récupérer le premier enregistrement de la table et supprime les clauses where. Alors, appelez firstOrFail avant où.

Model::firstOrFail()->where('something', $value)
1
Buraco