CakePHP validation règle automatiquement l'ajout d'un attribut obligatoire pour le domaine

Je suis l'aide d'une règle de validation personnalisée dans CakePHP pour vous assurer qu'une valeur est saisie dans un champ lors d'une case à cocher correspondante est marquée:

CakePHP validation règle automatiquement l'ajout d'un attribut obligatoire pour le domaine

Voici la règle de validation au sein de mon modèle de validation de la matrice de...

'tv_price'=>array(        
    'check'=>array(
        'rule'=>array('check_for_tv_price'),
        'message'=>'Please enter the television pricing information.',
    ),
)

...et voici ma vraiment personnalisé simple fonction de validation:

public function check_for_tv_price($check) {
    if($this->data['Client']['tv']==1&&$this->data['Client']['tv_price']=="") {
        return false;
    }
    if($this->data['Client']['tv']==1&&$this->data['Client']['tv_price']!="") {
        return true;
    }
    if($this->data['Client']['tv']==0) {
        return true;
    }

}

J'ai essayé d'ajouter 'required'=>false et 'allowEmpty'=>true à différents points de la validation de la matrice pour mon tv_price champ, mais ils ont toujours la priorité sur ma règle personnalisée! En conséquence, un utilisateur ne peut pas envoyer le formulaire, car le navigateur empêche (en raison de l'attribut obligatoire).

Pour référence, le navigateur crache le code HTML suivant:

<input id="ClientTvPrice" type="text" required="required" maxlength="255" minyear="2013" maxyear="2018" name="data[Client][tv_price]"></input>

(Note de l'minyear et maxyear attributs sont de la forme par défaut.)

Quelqu'un a trouvé un moyen d'empêcher l'insertion automatique de la required attribut lors de l'utilisation de règles de validation personnalisée?

Tous conseils seront très appréciés.

Merci!

Chris

  • Comment une telle tâche simple peut être si difficile souffle mon esprit... Il n'y a pas une bonne solution pour ce. Il semble que l'on ne peut pas permettre la saisie de texte est vide, encore exécuter le reste des validations/custom validations définies. Frustrant comme l'enfer...
InformationsquelleAutor CSamp | 2013-04-26