Yii Framework 2.0 Règles Date Du Validateur
Je suis en utilisant Yii Framework 2.0. J'ai un formulaire avec un champ de saisie de texte qui est destiné à une date. J'ai lu le Yii Framework 2.0 sur le Classe yii\validateurs\Validator et connu de tout le programme de validation des clés qui peuvent être utilisés à l'intérieur de la règles() méthode dans une classe de modèle. Lorsque j'utilise le date clés comme ci-dessous, il ne permet pas de valider quoi que ce soit. Cela signifie que je ne peux toujours mettre du texte dans ce champ d'entrée et de valider la forme.
Quand je l'ai changé en boolean ou e-mail, j'ai pu voir qu'il valide très bien quand je mets quelque chose de mal dans le champ de saisie. Comment puis-je valider une date de valeur à l'intérieur d'un champ de saisie avec Yii Framework 2.0?
Mes règles() méthode:
public function rules()
{
return [
[['inputfield_date'], 'required'],
[['inputfield_date'], 'safe'],
[['inputfield_date'], 'date'],
];
}
Mon point de vue page:
<?php $form = ActiveForm::begin(); ?>
<?= $form->field($model, 'inputfield_date')->textInput(); ?>
<?php ActiveForm::end(); ?>
J'ai juste modifié ma question avec le code des règles() la méthode et la forme à l'intérieur de la page d'affichage. J'espère que vous pouvez aider. Merci à l'avance!
À tout hasard vous avez résolu ce problème? Je vais avoir le même problème
OriginalL'auteur O Connor | 2014-09-28
Vous devez vous connecter pour publier un commentaire.
Garçon de la Yii docs sucer. Ils n'ont même pas de donner un exemple. Travail de O'Connor réponse, cela a fonctionné pour moi depuis que je suis de l'affectation de la valeur dans
2015-09-11
format.La docs n'ont même pas de spécifier où
format
outimestampAttribute
est venu, ou comment les utiliser. Il n'a même pas dire ce que le diablefrom_date
etto_date
sont. Et la plupart de tous, pas d'exemples!OriginalL'auteur Chloe
Solution de travail. Mes règles() méthode:
Mon formulaire dans la page d'affichage de:
Ma méthode de contrôleur:
Noter que le format de la date dépend de comment vous définissez votre format de date champ de saisie. Notons encore une fois que ce n'est pas un AJAX validateur. Après avoir cliqué sur le bouton "soumettre", vous verrez le message d'erreur si vous saisissez quelque chose d'autre qui n'est pas une date.
OriginalL'auteur O Connor
Vous pouvez valider pour la date comme ceci à partir des modèles de règles
OriginalL'auteur Azraar Azward
Pas 100% sûr de savoir comment il est dans Yii2, mais de sortir de Yii1 qui devait ressembler à cela...
(source: http://www.yiiframework.com/wiki/56/#hh8)
...Je dirais que je serais obligé de ressembler à quelque chose comme ceci dans Yii2:
non, ce format était juste un exemple, jetez un oeil à travers la Yii docs, vous voudrez peut-être commencer ici: yiiframework.com/doc-2.0/yii-helpers-formatconverter.html
Merci, mais il n'est pas sur le format de la date ou la façon de convertir un format à un autre. C'est à propos de 'date' validateur qui ne fait pas son travail.L'exemple de code devrait fonctionner, mais il ne fonctionne pas. Je suppose que c'est un bug dans Yii Framework 2.0
Je viens de recevoir ce travail. Votre code est correct, mais cette méthode doit être appelée dans le contrôleur de $model->valider(), ce qui est omis par Gii. Avec cette méthode, il devra valider l'entrée par les règles ci-dessus, mais ce n'est pas un AJAX validateur. Peux vivre avec elle.
vous pouvez l'ajouter comme une réponse, c'est permis... 😉
OriginalL'auteur webeno