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
-~----------~----~----~----~------~----~------~--~---

Répondre à