Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] jControllerDaoCrud et gestion des exceptions

Posted by vdemonchy on 10/24/2012 15:38

Bonjour,

J'utilise un contrôleur CRUD pour la gestion d'un formulaire, mais il y a quelque chose que je n'arrive pas à faire et je me demande si c'est possible.

Voici le problème : disons que je souhaite créer ou modifier une fiche client. Au moment de la validation, je dois vérifier si les infos saisies n'existent pas déjà pour un autre client dans la base de données dans laquelle je vais les insérer, car certaines infos sont sur des champs uniques et cela génère donc une erreur "violation de contrainte" qui n'est ni très parlante pour un utilisateur, ni ce que je souhaite afficher en production...

Ainsi, je me sers de la fonction beforeSaveUpdate pour aller vérifier si ce que je souhaite insérer est unique ou non. Si ce n'est pas le cas, je génère une erreur explicite à l'aide de $form->setErrorOn. Jusque là, tout va bien.

Là où ça se complique, c'est que je ne sais pas comment empêcher l'insertion des données par la suite, ou même gérer l'erreur, donc j'ai encore et toujours le même problème de "violation de contrainte".

Y a-t-il donc possibilité de faire une sorte de "try... catch..." pour me sortir de là ou autre chose ?

Merci.

  [Opened] jControllerDaoCrud et gestion des exceptions

Reply #1 Posted by vdemonchy on 10/24/2012 16:21

Il suffisait de faire les vérifications dans checkData et non beforeSaveUpdate, et de renvoyer false si quelque chose cloche, tout simplement...

Problème résolu sur IRC grâce à laurentj, merci !

 
Page
  1. jControllerDaoCrud et gestion des exceptions