J'ai un formulaire en Yii.

Il a la validation de modèle.

Sous cette forme, je dois insérer une URL dans le champ de texte.

eg:https://www.google.co.in

Dans la base de données, j'ai gardé les champs comme varchar.

Les règles du modèle sont

public function rules() {
    // NOTE: you should only define rules for those attributes that
    // will receive user inputs.
    return array(
        array('url', 'required'),
        array('name, url', 'length', 'max' => 255),

        // The following rule is used by search().
        // @todo Please remove those attributes that should not be searched.
        array('name, url', 'safe', 'on' => 'search'),
    );
}

Comment puis-je conserver la validation pour cela dans Model?

yii
-1
Sona 25 déc. 2015 à 10:56

3 réponses

Meilleure réponse
Try This:-

return array(
    array('yoururl', 'required'),
    array('yoururl', 'url'),//for url validation
    // The following rule is used by search().
    // @todo Please remove those attributes that should not be searched.
    array('name, yoururl', 'safe', 'on' => 'search'),
):
1
RAJESH CHAUHAN 25 déc. 2015 à 12:41
array('inputURL', 'url')  

Et si vous voulez ajouter http en face en cas d'utilisation manquante

array('website', 'url',defaultScheme' => 'http')
1
Nasim Saleh 25 déc. 2015 à 08:19

Vous devez utiliser le validateur d'URL

Par ici array('siteurl', 'url'),

public function rules() {
// NOTE: you should only define rules for those attributes that
// will receive user inputs.
return array(
    array('url', 'required'),
    array('name, url', 'length', 'max' => 255),
    array('url', 'url'),
    // The following rule is used by search().
    // @todo Please remove those attributes that should not be searched.
    array('name, url', 'safe', 'on' => 'search'),
);

}

0
scaisEdge 25 déc. 2015 à 08:17