Bonjour,
Je suis débutant sous cakephp et j'ai un problème certainement tout bête à résoudre mais je n'ai pas réussi à trouver la réponse sur le forum.
Présentation du problème :
Je suis en train de créer un site dans lequel les internautes peuvent ajouter des dégustations à des établissements : jusque là pas de pb !
Dans mon interface d'admin, je souhaite donc pouvoir modérer les dégustations ajoutées par les internautes et lorsque je valide une dégustation, ça doit exécuter plusieurs actions :
Quelle est la meilleure méthode pour réaliser cette partie mise à jour, à savoir l'exécution de plusieurs fonctions consécutives (actions qui ne nécessitent donc pas de vues puisque ce sont simplement des updates de tables) ?
Dans l'esprit il faudrait que mon controller Degustation ressemble un peu à ça
function admin_moderate()
{
// Action 1 - pour mettre à jour ma table users
$this->redirect(array('controller' => 'users','action' => 'calculate'));
// Action 2 - pour mettre à jour ma table etablissement
$this->redirect(array('controller' => 'etablissements','action' => 'recalculate'));
...
// Action N
....
// Redirection finale
$this->redirect($this->referer());
}
...mais là ça dirige vers la première action qui s'exécute et ça s'arrête là, sans faire ma 2ème action.
Comment exécuter mon action 1 puis mon action 2... puis mon action N ?
Après il serait possible de faire en sorte que chaque action en appelle une autre
ex :
Bref de manière générale comment puis-je faire pour faire plusieurs mises à jour consécutives dans mes différentes tables sans que ça devienne une usine à gaz et sans passer par une multitude de redirections ?
Merci pour votre aide !
Moi je serai passer par la création d’événement :
http://book.cakephp.org/2.0/en/core-libraries/events.html
http://www.grafikart.fr/tutoriels/cakephp/cakephp-events-316
Merci pour cette réponse aussi rapide qu'efficace ! Je viens de regarder la doc et le tuto grafikart (très bon tuto ^^) et effectivement ça répond tout à fait à ma problématique. Je n'avais pas encore été assez loin dans mon apprentissage de Cakephp et n'avais pas encore assimilé cette notion d'évènements.. Maintenant que j'ai compris le principe, il n'y a plus qu'à mettre tout ça en pratique ! Bref, merci beaucoup pour le coup de main ;-) Sujet résolu !