donc je cherche un moyen de simuler une erreur 404, j'ai essayé ceci:
throw $this->createNotFoundException();
et ça
return new Response("",404);
mais aucun ne fonctionne.
Vous pouvez trouver la solution dans la documentation Symfony2:
http://symfony.com/doc/2.0/book/controller.html
Gestion des erreurs et 404 pages
public function indexAction()
{
// retrieve the object from database
$product = ...;
if (!$product) {
throw $this->createNotFoundException('The product does not exist');
}
return $this->render(...);
}
Il y a une courte information dans la documentation:
"La méthode createNotFoundException () crée un objet spécial NotFoundHttpException , qui déclenche finalement une réponse HTTP 404 dans Symfony."
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException
Dans mes scripts, je l'ai fait comme ceci:
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException
/**
* @Route("/{urlSlug}", name="test_member")
* @Template()
*/
public function showAction($urlSlug) {
$test = $this->getDoctrine()->.....
if(!$test) {
throw new NotFoundHttpException('Sorry not existing!');
}
return array(
'test' => $test
);
}