Bonjour à tous,
Voila je viens d'intégrer de l'ajax sur un des formulaires de mon site. Tout marche très bien.

Mon seul souci se situe au niveau des sessions setFlash. Comment faire pour utiliser le setFlash avec ajax afin d'afficher les notifications? Ou alors peut être qu'il faut que je dise à Cake d'utiliser une vue spéciale?

Bref, je n'ai aucune idée de comment faire et j'aurai besoin de piste pour m'éclairer.

Merci d'avance

2 réponses


Dans ton controleur tu doit renvoyer l'erreur à ton script ajax ( en json ) puis l'afficher grâce au javascript.

kal-el
Auteur

Oui c'est comme ça que je fait, mais il doit bien y avoir un autre moyen non? J'ai vu dans la doc qu'il utilise des vues spécifique qu'ils appel ensuite du genre :

<?php
public function beforeFilter(){
    if($this->RequestHandler->isAjax()){
        $this->layout = 'ajax';
        $this->autoRender = false;
        $this->render('/Elements/notif_ajax.ctp', 'ajax');
    }
}
?>

Le problème c'est que je ne vois pas comment mettre ça en place. Bref pour le moment je fais comme tu as dis donc ça marche. Mais je suis obligé de dupliquer du code (celui de ma notification) dans mon JS pour afficher le message. J'aurai voulu avoir un retour du code de la vue directement.

Je reste ouvert à d'autre proposition.

Merci