---
title: "Bailíochtóirí"
version: 5.2
locale: ga
source: https://docs.djangoproject.com/ga/5.2/ref/validators/
canonical: https://djangodocs.dev/ga/5.2/ref/validators/
---
# Bailíochtóirí

## Bailíthe scríbhneoireachta

Is bailíochtaire é bailíochtaire a ghlacann luach agus a ardaíonn a:exc: ~django.core.exceptions.validationError mura gcomhlíonann sé roinnt critéir. Is féidir le bailíochtóirí a bheith úsáideach chun loighic bailíochtaithe a athúsáid idir cineálacha éagsúla réimsí

Mar shampla, seo bailíochtóir nach gceadaíonn ach fionuimhreacha:

```
from django.core.exceptions import ValidationError
from django.utils.translation import gettext_lazy as _

def validate_even(value):
    if value % 2 != 0:
        raise ValidationError(
            _("%(value)s is not an even number"),
            params={"value": value},
        )
```

Is féidir leat é seo a chur le réimse samhail tríd an argóint réimse d's:attr: ~Django.db.Models.Field.Validators:

```
from django.db import models

class MyModel(models.Model):
    even_field = models.IntegerField(validators=[validate_even])
```

Toisc go ndéantar luachanna a thiontú go Python sula ndéantar bailíochtóirí a reáchtáil, is féidir leat an bailíochtóir céanna a úsáid fiú le foirmeacha:

```
from django import forms

class MyForm(forms.Form):
    even_field = forms.IntegerField(validators=[validate_even])
```

Is féidir leat rang a úsáid freisin le modh \_\_call\_\_ () le haghaidh bailíochtóirí níos casta nó níos cumraithe. :class: RegExvalidator, úsáideann an teicníc seo mar shampla. \<migration-serializing\>\<custom-deconstruct-method\>Má úsáidtear bailíochtóir rang-bhunaithe sa rogha réimse samhail: attr: ~django.db.Models.Field.Validators, ba cheart duit a chinntiú go bhfuil sé: ref: inseriálaithe ag an gcreat imirce \`trí:ref: \`deconstruct () agus \_\_eq\_\_ () modhanna a chur leis.

## Conas a reáchtáiltear bailíochtóirí

\</ref/forms/validation\> \<validating-objects\>Féach an:doc: bailíochtú foirme le haghaidh tuilleadh eolais faoin gcaoi a reáchtáiltear bailíochtóirí i bhfoirmeacha, agus:ref: Rudaí bailíochtaithe \`maidir le conas a reáchtáiltear iad i samhlacha. Tabhair faoi deara nach reáchtálfar bailíochtóirí go huathoibríoch nuair a shábhálann tú samhail, ach má tá a: class: \`~django.forms.modelForm á úsáid agat, reáchtálfaidh sé do bhailíochtóirí ar aon réimsí atá san áireamh i d'fhoirm. Féach na:doc: Doiciméadú Modelfhoirme le haghaidh faisnéise maidir le conas a idirghníom\</topics/forms/modelforms\> haíonn bailíochtú samhail le foirmeacha.

## Bailíochtóirí tógtha

Tá bailiúchán bailíochtóirí inghlaonta sa mhodúl:MOD: django.core.validators le húsáid le réimsí samhail agus foirm. Úsáidtear iad go hinmheánach ach tá siad ar fáil le húsáid le do réimsí féin freisin. Is féidir iad a úsáid i dteannta modhanna saincheaptha field.clean () nó in ionad modhanna saincheaptha.

### `RegExvalidator`

#### `class RegexValidator(regex=None, message=None, code=None, inverse_match=None, flags=0)`

**Paraiméadair:** - `regex` -- Mura bhfuil `None`, cuirfidh sé airí:attr: regex. Is féidir a bheith ina shreang abairt rialta nó ina léiriú rialta réamhthiomsaithe.
- `message` -- Mura bhfuil `None`, cuireann sé airí:attr: .message.
- `code` -- Mura bhfuil `None`, cuireann sé airí:attr: cód.
- `inverse_match` -- Mura bhfuil `None`, fhilleadh:attr: inverse\_match.
- `flags` -- Mura bhfuil `None`, cuireann sé airí:attr: bratacha \`. Sa chás sin, caithfidh :attr: \`regex a bheith ina teaghrán abairt rialta, nó:exc: TypeError a ardaítear.

A: Aicme: Cuardach RegExvalidator ar an luach\` a chuirtear ar fáil le haghaidh abairt rialta ar le:func: re.search. De réir réamhshocraithe, ardaíonn a:exc: ~django.core.exceptions.validationError le:attr: teachtaire agus:attr: code mura bhfaightear meaitseach\*\*\*\*. Is féidir a iompar a inbhéartú trí shocrú: attr: inverse\_match go `True`, sa chás sin ardaítear an:exc: ~django.core.exceptions.validationError nuair a aimsítear cluiche .

#### `regex`

An patrún abairt rialta le cuardach a dhéanamh laistigh den luach\` a chuirtear ar fáil, ag baint úsáid:func: re.search. D'fhéadfadh sé seo a bheith ina shreang nó ina abairt rialta réamhthiomsaithe a cruthaíodh le:func: re.compile. Réamhshocraithe don teaghrán folamh, a bheidh le fáil i ngach `luach` féideartha.

#### `message`

An teachtaireacht earráide a úsáideann ar:exc: ~django.core.exceptions.validationError má theipeann ar bhailíochtú. Réamhshocraithe go `"Cuir isteach luach bailí"`.

#### `code`

An cód earráide a úsáideann ar:exc: ~django.core.exceptions.validationError má theipeann ar bhailíochtú. Réamhshocraithe go `"neamhbhailí"`.

#### `inverse_match`

An modh meaitseála le haghaidh: attr: regex. Réamhshocraithe go `False`.

#### `flags`

An bhrataí: ref: regex \`a úsáidtear agus an teaghrán abairt ri \<python:contents-of-module-re\>alta á thiomsú: attr: \`regex. Má tá: attr: abairt rialta réamh-thiomsaithe é regex, agus:attr: flags a shárú, :exc: TypeError ardaítear. Réamhshocraithe go `0`.

### `Bailíochtaitheoir ríomhphost`

#### `class EmailValidator(message=None, code=None, allowlist=None)`

**Paraiméadair:** - `message` -- Mura bhfuil `None`, cuireann sé airí:attr: .message.
- `code` -- Mura bhfuil `None`, cuireann sé airí:attr: cód.
- `allowlist` -- Mura bhfuil `None`, cuirfidh sé airí:attr: liosta.

Cinntíonn an:class: EmailValidator go bhfuil cuma luach cosúil le ríomhphost, agus ardaíonn sé a:exc: ~django.core.exceptions.validationError le:attr: teachtaire agus:attr: code mura ndéanann sé. Meastar go bhfuil luachanna níos faide ná 320 carachtar neamhbhailí i gcó

#### `message`

An teachtaireacht earráide a úsáideann ar:exc: ~django.core.exceptions.validationError má theipeann ar bhailíochtú. Réamhshocraithe go `"Cuir isteach seoladh ríomhphoist bailí"`.

#### `code`

An cód earráide a úsáideann ar:exc: ~django.core.exceptions.validationError má theipeann ar bhailíochtú. Réamhshocraithe go `"neamhbhailí"`.

#### `allowlist`

Liosta de na bhfearann ríomhphoist. De réir réamhshocraithe, úsáidtear abairt rialta (an tréith `domain_regex`) chun gach rud atá le feiceáil tar éis an chomhartha `@` a bhailíochtú. Mar sin féin, má tá an sreang sin le feiceáil sa `liosta ceada`, seachtar an bailíochtú seo. Mura gcuirtear ar fáil, is é “\['localhost'\] ```an réamhshocraithe ``liosta```. Ní rachaidh fearainn eile nach bhfuil ponc iontu bailíochtú, mar sin bheadh ort iad a chur leis an liosta ceada\` de réir mar is gá.

### `DomainmValidator`

> **New in Django 5.1**

#### `class DomainNameValidator(accept_idna=True, message=None, code=None)`

A: aicme: fo-aicme RegexValidator a chinntíonn go bhfuil cuma luach cosúil le ainm fearainn. Meastar go bhfuil luachanna níos faide ná 255 carachtar neamhbhailí i gcó Ní ghlactar le seoltaí IP mar ainmneacha fearainn bailí.

Chomh maith le hargóintí roghnacha a thuismitheoir:class: rang RegExvalidator, glacann `DomainNameValidator` le tréith roghnach breise:

#### `accept_idna`

Cinneann sé an nglactar le hainmneacha fearainn idirnáisiúnta, is é sin, ainmneacha fearainn ina bhfuil carachtair neamh-ASCII. Réamhshocraithe go `True`.

### `UrlValidator`

#### `class URLValidator(schemes=None, regex=None, message=None, code=None)`

A: aicme: fo-aicme RegexValidator a chinntíonn go bhfuil cuma URL ar luach, agus a ardaíonn cód earráide `'invalid'` mura ndéanann sé. Meastar go bhfuil luachanna níos faide ná: attr: max\_length carachtair neamhbhailí i gcónaí.

Meastar go bhfuil seoltaí loopback agus spásanna IP curtha in áirithe bailí. Tacaítear le seoltaí litriúla IPv6 (:rfc: 3986 #section -3.2.2) agus fearainn Unicode araon.

Chomh maith le hargóintí roghnacha a thuismitheoir:class: rang RegExvalidator, glacann `URLValidator` le tréith roghnach breise:

#### `schemes`

Liosta scéime URL/URI le bailíochtú ina choinne. Mura gcuirtear ar fáil, is é an liosta réamhshocraithe `['http', 'https', 'ftp', 'ftps']`. Mar thagairt, soláthraíonn láithreán gréasáin IANA liosta iomlán de scéimeanna bailí URI \_.

> **Warning**
>
> Ní rachaidh luachanna a thosaíonn le file: ///\` bailíochtú fiú nuair a chuirtear an scéim comhad ar fáil. Caithfidh óstach a bheith i luachanna bailí.

#### `max_length`

An fad uasta na luachanna a d'fhéadfaí a mheas bailí. Réamhshocraithe go 2048 carachtar.

### `ríomhphost_bailíochta`

#### `validate_email`

An:class: EmailValidator sampla gan aon saincheaptha.

### `ainm_fearainn bailaite`

> **New in Django 5.1**

#### `validate_domain_name`

A: Class: DomainNameValidator sampla gan aon saincheaptha.

### `bailate_slug`

#### `validate_slug`

A: Aicme: Sampla RegExValidator a chinntíonn go bhfuil luach nach bhfuil ach litreacha, uimhreacha, béim nó braithíní.

### `bailate_unicode_slug`

#### `validate_unicode_slug`

A: Aicme: Sampla RegExvalidator a chinntíonn go bhfuil luach nach bhfuil ach litreacha, uimhreacha, béim nó braithíní Unicode.

### bailate\_ipv4\_address \`\`

#### `validate_ipv4_address`

A: aicme: Sampla RegExValidator a chinntíonn go bhfuil cuma luach cosúil le seoladh IPv4.

### bailate\_ipv6\_address \`\`

#### `validate_ipv6_address`

Úsáideann sé `django.utils.ipv6` chun bailíocht seoladh IPv6 a sheiceáil.

### bailate\_ipv46\_address \`\`

#### `validate_ipv46_address`

Úsáideann sé ```validate_ipv4_address ``agus ``validate_ipv6_address``` araon chun a chinntiú gur seoladh bailí IPv4 nó IPv6 é luach.

### `liosta_coma_iomlán bailíochtaí_scartha`

#### `validate_comma_separated_integer_list`

A: aicme: “RegExValidator” a chinntíonn go bhfuil luach ná liosta de shláimhreacha scartha le camóg.

### `int_liost_bailíochtar`

#### `int_list_validator(sep=',', message=None, code='invalid', allow_negative=False)`

Tuairisceáin a:class: RegExValidator sampla a chinntíonn go bhfuil sreang comhdhéanta de shlánuimhreacha atá scartha le `sep`. Ceadaíonn sé sláimhreacha diúltacha nuair a bhíonn allow\_negative\` `True`.

### `MaxValueValidator`

#### `class MaxValueValidator(limit_value, message=None)`

Ardaíonn a:exc: ~django.core.exceptions.validationError le cód ``` `'max_value'` má tá ``lua ``` níos mó ná `limit_value`, a d'fhéadfadh a bheith inghlaonta.

### `Minvaluevalidator`

#### `class MinValueValidator(limit_value, message=None)`

Ardaíonn a:exc: ~django.core.exceptions.validationError le cód ``` `min_value'` má tá ``lua ``` níos lú ná `limit_value`, a d'fhéadfadh a bheith inghlaonta.

### `MaxLengthValidator`

#### `class MaxLengthValidator(limit_value, message=None)`

Ardaíonn a:exc: ~django.core.exceptions.validationError le cód `` `'max_long' `` má tá fad `value` níos mó ná `limit_value`, a d'fhéadfadh a bheith inghlaonta.

### `MinLengthValidator`

#### `class MinLengthValidator(limit_value, message=None)`

Ardaíonn a:exc: ~django.core.exceptions.validationError le cód `` `min_long `` má tá fad `value` níos lú ná `limit_value`, a d'fhéadfadh a bheith inghlaonta.

### `DeimalValidator`

#### `class DecimalValidator(max_digits, decimal_places)`

Ardaithe:exc: ~django.core.exceptions.validationError leis na cóid seo a leanas:

- `` `'max_digits' `` má tá líon na ndigit níos mó ná `max_digits`.
- ``` ``max_decimal_places' ``` má tá líon na ndeachmhálacha níos mó ná `deach_places`.
- `` `'max_whole_digits' `` má tá líon na ndigit iomlána níos mó ná an difríocht idir `max_digits` agus `deach_places`.

### `FileExtensionValidator`

#### `class FileExtensionValidator(allowed_extensions, message, code)`

Ardaíonn a:exc: ~django.core.exceptions.validationError le cód `` `invalid_extension' `` mura bhfaightear síneadh `value.name` (`value` a:class: ~django.core.files.file) i allowed\_extensions\`. Déantar an síneadh a chur i gcomparáid go cás-neamhíogair le `allowed_extensions`.

> **Warning**
>
> Ná bí ag brath ar bhailíochtú an síneadh comhaid chun cineál comhaid a chinneadh. Is féidir comhaid a athainmniú chun aon síneadh a bheith acu is cuma cad iad na sonraí atá iontu.

### `validate_image_file_extension`

#### `validate_image_file_extension`

\< <https://pillow.readthedocs.io/en/latest/handbook/image-file-formats.html>\>Úsáideann sé Pillow chun a chinntiú go bhfuil síneadh bailí íomhá ag `value.name` (`value`: a:class: ~django.core.files.file).

### `ProhibitNullCharactersValidator`

#### `class ProhibitNullCharactersValidator(message=None, code=None)`

Ardaíonn a:exc: ~django.core.exceptions.validationError má tá carachtar null amháin nó níos mó sa ```str (value) ``(`'\ x00'```).

**Paraiméadair:** - `message` -- Mura bhfuil `None`, cuireann sé airí:attr: .message.
- `code` -- Mura bhfuil `None`, cuireann sé airí:attr: cód.

#### `message`

An teachtaireacht earráide a úsáideann ar:exc: ~django.core.exceptions.validationError má theipeann ar bhailíochtú. Ní cheadaítear réamhshocraithe go "carachtair neall.” .

#### `code`

An cód earráide a úsáideann ar:exc: ~django.core.exceptions.validationError má theipeann ar bhailíochtú. Réamhshocraithe go `"null_caràcters_not_allowed"`.

### `StepValueValidator`

#### `class StepValueValidator(limit_value, message=None, offset=None)`

Ardaíonn a:exc: ~django.core.exceptions.validationError le cód `` `step_size'` mura bhfuil `value `` iolrach dhílis de limit\_value\`, is féidir a bheith ina luach snámhphointe, sláimhir nó deachúil nó inghlaoch. Nuair a shocraítear `offset`, tarlaíonn an bailíochtú i gcoinne `limit_value` móide `offset`. Mar shampla, i gcás ````StepValueValidator (3, offset = 1.4) ``tá luachanna bailí ```1.4````, 4.4\`, 7.4\`, 10.4\`, agus mar sin de.
