2010-08-06 7 views
2

Est-il possible d'utiliser la fonctionnalité gettext dans le tableau de validation du modèle CakePHP?Utilisation de gettext dans la validation du modèle CakePHP

Habituellement, un programmeur faire comme ceci:

class Data extends AppModel 
{ 
var $validate = array(
    'title' => array(
    'NichtLeer' => array(
    'rule' => array('between', 4, 20), 
    'allowEmpty' => false, 
    'message' => _('Bitte geben Sie einen Titel an!') 
    ) 
) 
); 
} 

Mais comme il est impossible d'utiliser les fonctions en dehors du champ d'une méthode, je dois trouver une autre alternative propre.

Donc, existe-t-il une alternative à celle-ci, que définit les validations improvisées dans la méthode de configuration du modèle?

Cordialement, Benedikt

Répondre

2

Construire le tableau validate dans le constructeur pourrait être considéré comme une alternative propre:

class Data extends AppModel { 
    public function __construct() { 
     $this->validate = array(
      'title' => array(
       'NichtLeer' => array(
        'rule' => array('between', 4, 20), 
        'allowEmpty' => false, 
        'message' => _('Bitte geben Sie einen Titel an!') 
       ) 
      ) 
     ); 
    } 
} 
+0

En outre, dans le cas où vous pourriez être intéressé, CakePHP est livré avec quelques goodies pour [l'internationalisation et localisation] (http://book.cakephp.org/view/1228/Internationalization-Localization). – Mike

+0

Oui, j'utilise déjà toutes ces fonctionnalités :-) Merci. Je pense que je vais m'en tenir à ça. – Benedikt

+0

Je l'ai seulement mentionné parce que vous avez utilisé la fonction de soulignement unique dans votre code, pas la fonction de double trait de soulignement qui vient avec CakePHP. – Mike

Questions connexes