Referința rapidă la validare - rețeta yii 1

Cum funcționează validarea

Clasa CModel utilizează metoda [CModel :: rules ()] pentru a specifica regulile de validare.
Regulile sunt returnate ca o matrice:

Următorul cod este un exemplu pentru modul în care poate fi implementată metoda [CModel :: rules ()].






Fiecare dintre matricele interne definește regula validării.

Selectarea validatorilor

Yii caută validatorul într-o anumită ordine:

  1. Metoda modelului cu același nume specificat în matrice.
  2. Validatorul Yii încorporat, moștenit de la CValidator.
  3. O cale sau un alias care indică validatorul său, moștenit de la CValidator.

Setări standard

  • listă de câmpuri de model: câmpuri de model pentru validare, separate prin virgule;
  • validator: determină ce validator să folosească;
  • on: definește scriptul pentru care este efectuată validarea. Dacă specificați mai mult de unul
    scripturile, ele sunt separate prin virgule. Dacă parametrul nu este setat, regula se aplică tuturor
    scenarii;
  • cu excepția: definește un script în care regula de validare specificată este ignorată. Dacă specificați mai mult de unul
    scripturile, ele sunt separate prin virgule.
  • mesaj: mesajul emis atunci când apare o eroare de validare;
  • ... parametrii de validare ...: unul sau mai mulți parametri suplimentari trecuți la validatorul specificat.

Reguli standard de validare

boolean. CBooleanValidator. Verificați dacă valoarea variabilei este trueValue sau falseValue.

  • allowEmpty, dacă valoarea poate fi nulă sau goală.
  • falseValue, falseValue.
  • strict, dacă compararea este strictă: nu numai valorile, ci și tipul lor ar trebui să coincidă.
  • trueValue, trueValue.
  • captcha. CCaptchaValidator. verifică că valoarea câmpului de model se potrivește cu verificarea
    codul CAPTCHA.

    • allowEmpty, dacă valoarea poate fi nulă sau goală.
    • captchaAction, ID-ul acțiunii care arată imaginea CAPTCHA.
    • case Sensibile, indiferent dacă se utilizează un test sensibil la caz.
  • comparare. CCompareValidator. compară valoarea câmpului model specificat cu valoarea altui
    câmpuri și verificări pentru a vedea dacă sunt egale.

    • allowEmpty, dacă valoarea poate fi nulă sau goală.
    • compareAttribute, numele atributului cu care trebuie comparat.
    • compareValue, o valoare constanta cu care sa comparam.
    • operator, operatorul utilizat în comparație.
    • strict, dacă compararea este strictă: nu numai valorile, ci și tipul lor ar trebui să coincidă.
  • implicit. CDefaultValueValidator. inițializează atributele cu valoarea specificată.
    În acest caz, validarea nu reușește. Este necesar să se precizeze valorile implicite.

    • setOnEmpty, setați valoarea implicită numai dacă valoarea este nulă sau un șir gol.
    • valoare, valoarea implicită.
  • data. CDateValidator. verifică faptul că valoarea este o dată, oră sau
    și ambele împreună.

    • allowEmpty, dacă valoarea poate fi nulă sau goală.
    • format, format de valoare. Poate fi o matrice sau un șir. Valoarea implicită este
      "MM / zi / aaaa". Formatele rămase sunt descrise în API-ul CDateTimeParser.
    • timestampAttribute, numele atributului la care va fi scris rezultatul parsării datei.
      Valoarea prestabilită este nulă.






  • există. CExistValidator. verifică dacă există o valoare de atribut în tabelul specificat.

    • allowEmpty, dacă valoarea poate fi nulă sau goală.
    • attributeName, numele atributului ActiveRecord folosit pentru a verifica valoarea.
    • className, numele clasei ActiveRecord folosită pentru validare.
    • criterii, criterii suplimentare pentru interogare.
  • fișier. CFileValidator. verifică dacă fișierul a fost descărcat.

    • allowEmpty, dacă este posibil să nu încărcați fișierul și să lăsați câmpul necompletat.
    • maxFiles, numărul maxim de fișiere.
    • maxSize, dimensiunea maximă în octeți.
    • minSize, dimensiunea minimă în octeți.
    • preaLarge, mesaj de eroare dacă fișierul este prea mare.
    • tooMany, un mesaj care este afișat dacă sunt încărcate prea multe fișiere.
    • tooSmall, un mesaj care este afișat dacă fișierul descărcat este prea mic.
    • tipuri, o listă de extensii de fișiere pe care le puteți încărca.
    • wrongType, mesajul returnat dacă nu se poate încărca acest tip de fișier.
    • mimeTypes, o listă de tipuri de fișiere MIME care pot fi încărcate. Poate fi folosit cu condiția
      Extensia fileinfo PECL este instalată. A apărut în versiunea 1.1.11.
    • errorMimeType, mesajul returnat dacă nu se poate încărca acest tip de fișier. Este posibil să se folosească,
      că extensia PECL fileinfo este instalată. A apărut în versiunea 1.1.11.
  • filtru. CFilterValidator. aplică un filtru la date.

    în. CRangeValidator. verifică dacă valoarea intră într-un interval specificat sau o listă de valori.

    • allowEmpty, dacă valoarea poate fi nulă sau goală.
    • interval, o listă de valori valide sau un interval valid.
    • strict, dacă compararea este strictă: nu numai valorile, ci și tipul lor ar trebui să coincidă.
    • nu, permite verificarea excepției de la interval în loc să o introduceți.
  • lungime. CStringValidator. verifică dacă numărul de caractere introduse corespunde unei anumite valori.

    • allowEmpty, dacă valoarea poate fi nulă sau goală.
    • codare, codificarea șirului de verificat.
    • este numărul exact de caractere.
    • max, numărul maxim de caractere.
    • min, numărul minim de caractere.
    • tooShort, un mesaj de eroare afișat dacă numărul de caractere este prea mic.
    • tooLong, un mesaj de eroare care este afișat dacă numărul de caractere este prea mare.
  • numerică. CNumberValidator. verifică dacă valoarea este un număr într-un anumit interval.

    • allowEmpty, dacă valoarea poate fi nulă sau goală.
    • integerOnly, numai numere întregi.
    • max, valoarea maximă.
    • min, valoarea minimă.
    • tooBig, un mesaj de eroare care este returnat dacă valoarea este prea mare.
    • preaSmall, un mesaj de eroare care este returnat dacă valoarea este prea mică.
    • integerPattern, o expresie regulată folosită pentru a valida numere întregi. Folosit când
      integerOrily este adevărat. A apărut în versiunea 1.1.7.
    • numberPattern, o expresie regulată folosită pentru a valida numerele cu puncte în virgulă mobilă. Folosit când
      integerAlly is false. A apărut în versiunea 1.1.7.
  • meci. CRegularExpressionValidator. verifică dacă valoarea se potrivește cu expresia regulată.

    • allowEmpty, dacă valoarea poate fi nulă sau goală.
    • model, expresie regulată.
    • nu, dacă inversează logica de validare. Dacă valoarea este adevărată, atunci valoarea care trebuie verificată nu trebuie să se potrivească
      cu o expresie regulată. Valoarea implicită este falsă. A apărut în versiunea 1.1.5.
  • necesară. CRequiredValidator. verifică faptul că valoarea nu este nulă și nu este goală.

    • valuevalue, valoarea pe care trebuie să o aibă atributul.
    • strict, dacă compararea este strictă: nu numai valorile, ci și tipul lor ar trebui să coincidă.
  • în condiții de siguranță. CSafeValidator. marchează atributul sigur pentru alocarea masei.

    tip. CTypeValidator. compară tipul atributului cu cel specificat (integer.flat.string.date.time.datetime).
    Pentru validarea datelor de la versiunea 1.1.7, este mai bine să utilizați CDateValidator.

    • allowEmpty, dacă valoarea poate fi nulă sau goală.
    • dateFormat, format pentru validarea datelor.
    • datetimeFormat, un format pentru validarea datei și a orei.
    • timeFormat, format pentru validarea timpului.
    • tipul, tipul de date.
  • unic. CUniqueValidator. verifică valoarea pentru unicitate.

    • allowEmpty, dacă valoarea poate fi nulă sau goală.
    • attributeName, numele atributului ActiveRecord folosit pentru a verifica valoarea.
    • case Sensibile, indiferent dacă comparația este insensibilă la minuscule.
    • className, numele clasei ActiveRecord folosită pentru validare.
    • criterii, criterii suplimentare pentru interogare.
  • nesigure. CUnsafeValidator. marchează atributul nesigur pentru alocarea de masă.

    URL-ul. CUrlValidator. verifică dacă valoarea este o adresă URL http sau https validă.

    Merită să explorați

  • Instalare și configurare





    Trimiteți-le prietenilor: