Bonjour à tous,
Je commence avec Laravel et j'ai un souci sur la conception d'une simple page error 404.
Voici mon context :
J'ai un controller "PageController" qui, pour le moment, récupère tous les slugs pour requêter les contenus dans la DB.
Il faut savoir, j'ai très peu de code HTML (juste header/footer) dans la vue associée au controller (view "page").
Ce que je souhaite faire, c'est générer cette page (error 404) via ce même controller page.
Mon problème :
J'arrive bien a générer la page 404 si le slug n'est pas existant dans la DB, mais je ne parviens pas à envoyer en header (dans le controller ?) un status code 404.
Pourriez-vous m'expliquer comme je pourrais faire ?
Merci d'avance.
La méthode abort(404) permet d'envoyer une erreur 404. Avec le bon header ? Je ne sais pas, faut essayer.
http://laravel.com/docs/5.1/errors#http-exceptions
Bonjour PallMallShow,
Merci pour ton retour, mais je n'ai pas réussi à faire fonctionner "abord".
Entre temps, j'ai testé autre chose qui à l'air de faire l'affaire.
Au lien de mettre dans mon controller :
return view(...)
J'ai utilisé la chose suivante :
return response()->view(...)
Je ne sais pas si c'est bien propre de faire ainsi, mais ça répond temporairement à ce que je cherchais :)
Quand tu dis que tu n'a pas réussi a faire fonctionner, c'est à dire ?
Moi j'utilise simplement (sans include sans rien) :
public function test(){
if(!$trucmuch)
abort(404);
}
Je pense que c'est dû à une mauvaise utilisation de ma part. Cela me générait une exeption. Du coup, pour le moment je concerve ma solution précédente :)