salut déjà, merci d'avoir répondu
voilà mon code (en partie) : http://bin.cakephp.org/view/2137985698 je sais bien comment fonctionne le système de validation mais pas quand il s'agit de vérifier la présence d'une association entre 2 modèles liés par une relation HABTM oui, je fais le isset dans le contrôleur, et oui c moche, mais je comme pour ce cas précis je sais pas comment utiliser le système de validation... pour le coup du formulaire vide et du tableau, je vais décrire ce que j'ai fait ça sera plus simple : - aller sur le fomulaire d'ajout de Game - ne rien remplir - valider - évidemment la page se raffiche avec les messages d'erreurs qui vont bien et un var_dump de $this->data dans l'action add du contrôleur me donne un truc du genre array ( [Game] => array ( 'champ1' => string(0) ''... /* pareil pour tous les champs */ ) ['GameGenre'] => array(1) { ['GameGenre'] => string(0) '' } ['GameBackground'] => array(1) { ['GameBackground'] => string(0) '' } ) j'utilise la 1.2 RC2 et je n'avais pas ce comportement avec la 1.2 alpha ou beta merci d'avance pour l'aide On 10 juil, 14:14, avairet <[EMAIL PROTECTED]> wrote: > Bonjour Dia, > > Avec le système de validation, tu dois déclarer une variable $validate > dans ton modèle Game et une autre dans GameGenre. > Sur ce type là : > > public $validate = array( > 'titre' => array('rule'=>array('minLength', > 1),'message'=>'Obligatoire') > > } > > Là tu indiques faire un if(!isset($this->data[''GameGenre]")), mais tu > fais celà dans ton contrôleur, non ? > C'est possible mais cela n'est pas la meilleure solution automagique > de Cake. > > Par ailleurs, tu dis "valider un formulaire vide renvoie un > tableau" ?? > Mais pour moi, valider un formulaire vide renvoie false et un éventuel > message d'erreur ?! > > Enfin, dans un formulaire qui contient une HABTM, le select multiple a > pour name : data[GameGenre][GameGenre][] > Donc si tu testes uniquement sur data[GameGenre], alors tu as > forcément une réponse erronée. > > Pour te répondre avec précision, il faudrait qu'on puisse lire un > minimum de code et que tes explications soient claires. > Tu peux utiliser le bin pour nous copier-coller du code > :http://bin.cakephp.org/ > > Avairet > > On 10 juil, 13:34, Dia <[EMAIL PROTECTED]> wrote: > > > > > salut à tous > > > je vous explique mon problème : > > j'ai 2 modèles (game et gamegenre pour l'exemple) liés par une > > relation HABTM > > je veux que chaque entité du modèle game soit au mois lié à une entité > > du modèle gamegenre > > comment est ce que je peux vérifier cela avec le système de validation > > de CakePHP ? (en gros, dans le formulaire /games/add, le champ multi > > select qui représente gamegenre doit avoir au moins une valeur) > > > dans la branche 1.2, avant les RC, j'utilisais "if > > (!isset($this->data['GameGenre'])) { /* error */ }" dans le gamecontroller > > > mais depuis les RC, valider un formulaire vide renvoie "['GameGenre'] > > => array(1) { ['GameGenre'] => string(0) '' }" > > > => y a un moyen simple de gérer ça ? > > > merci- Masquer le texte des messages précédents - > > - Afficher le texte des messages précédents - --~--~---------~--~----~------------~-------~--~----~ Groupe "Cakephp-fr". Adresse : [email protected] Pour résilier : [EMAIL PROTECTED] Pour les options : http://groups.google.com/group/cakephp-fr?hl=fr -~----------~----~----~----~------~----~------~--~---
