Bonjour voila ce que j'aimerait faire , j'ai un composant qui ce charge dans mon controller celui-ci
public function beforeRender(Controller $Controller)
{
if($this->_protocoles=='ajax')
{
json_encode($this->_set['data']);
exit();
}
/////////////////////////:: protocole [http]
$Controller->render('error/ma_page');
}
Seulement le render me renvoit un belle pages blanches
un this->render() fonctionne a partir de mon controller
même si mon objectif , n'est pas celui-ci vu que j'ai obligatoirement besoin de gérez mon render depuis le composants !
Est ce possibles ?
Merci , bonne journée a vous
C'est bon j'ai trouvez la réponse , en faite c'était la partit shutdown dont il fallait ce servir
public function shutdown(Controller $Controller)
{
$Controller->render('Error/index_noResult');
}
Salut,
Si tu veux renvoyer vers une erreur le mieux (et le plus sécurisé) est d'envoyé une exeption.
Pour simuler le fait que la page n'existe pas:
throw new NotFoundException('Page Introuvable');
Tu peux aussi envoyer ForbiddenException ou autre
Si c'est pas que tu veux faire, il faut peut-être essayer d'ajouter un slash /:
$Controller->render('/error/ma_page');
Salut, regarde l'api plutot sur beforeRender() enfaite il permet de faire des traitement sur les données, je te conseille plutot d'utiliser http://api.cakephp.org/2.6/class-Component.html#_beforeRedirect
qui lui va te rediriger si tu lui retourne un tableau avec la clé en l'url (je suis pas sur)
return array('url' => '/error/ma-page');
Sa doit te rediriger vers la page demander, si tu veux pas que sa te redirige tu renvoie null