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
--~--~---------~--~----~------------~-------~--~----~
Groupe "Cakephp-fr".
Adresse : [email protected]
Pour résilier : [EMAIL PROTECTED]
Pour les options : http://groups.google.com/group/cakephp-fr?hl=fr
-~----------~----~----~----~------~----~------~--~---