---
title: "Réimsí foirme agus giuirléidí sonracha PostgreSQL"
version: 6.0
locale: ga
source: https://docs.djangoproject.com/ga/6.0/ref/contrib/postgres/forms/
canonical: https://djangodocs.dev/ga/6.0/ref/contrib/postgres/forms/
---
# Réimsí foirme agus giuirléidí sonracha PostgreSQL

Tá na réimsí agus na giuirléidí seo go léir ar fáil ón modúl `django.contrib.postgres.forms`.

## Réimsí

### `Simplearrayfield`

#### `class SimpleArrayField(base_field, delimiter=',', max_length=None, min_length=None)`

Réimse a dhéanann mapáil chuig eagar. Léirítear é ag HTML \<input\>\`\`\`.

#### `base_field`

Is argóint riachtanach é seo.

Sonraíonn sé an réimse foirme bhunúsach don eagar. Ní úsáidtear é seo chun aon HTML a rinneadh, ach úsáidtear é chun na sonraí a chuirtear isteach a phróiseáil agus iad a bhailíochtú. Mar shampla:

```pycon
>>> from django import forms
>>> from django.contrib.postgres.forms import SimpleArrayField

>>> class NumberListForm(forms.Form):
...     numbers = SimpleArrayField(forms.IntegerField())
...

>>> form = NumberListForm({"numbers": "1,2,3"})
>>> form.is_valid()
True
>>> form.cleaned_data
{'numbers': [1, 2, 3]}

>>> form = NumberListForm({"numbers": "1,2,a"})
>>> form.is_valid()
False
```

#### `delimiter`

Is argóint roghnach é seo a réamhshocraíonn camóg: `,`. Úsáidtear an luach seo chun na sonraí curtha isteach a roinnt. Ligeann sé duit SimpleArrayField\` a shlánú le haghaidh sonraí ilthoiseach:

```pycon
>>> from django import forms
>>> from django.contrib.postgres.forms import SimpleArrayField

>>> class GridForm(forms.Form):
...     places = SimpleArrayField(SimpleArrayField(IntegerField()), delimiter="|")
...

>>> form = GridForm({"places": "1,2|2,1|4,3"})
>>> form.is_valid()
True
>>> form.cleaned_data
{'places': [[1, 2], [2, 1], [4, 3]]}
```

> **Note**
>
> Ní thacaíonn an réimse le éalú ón teorannaire, mar sin bí cúramach i gcásanna ina bhfuil an teorannaitheoir ina charachtar bailí sa réimse bunúsach. Ní gá go mbeadh an teorannaitheoir ach carachtar amháin.

#### `max_length`

Is argóint roghnach é seo a bhailíochtaíonn nach sáraíonn an tsraith an fad luaite.

#### `min_length`

Is argóint roghnach é seo a bhailíochtaíonn go sroicheann an t-eagar an fad luaite ar a laghad.

> **Foirmeacha atá cairdiúil don**
>
> Níl SimpleArrayField an-chairdiúil le húsáid i bhformhór na gcásanna, ach is bealach úsáideach é chun sonraí a fhormáidiú ó ghuirléid taobh an chliaint le cur isteach chuig an bhfreastalaí.

### `SplitarrayField`

#### `class SplitArrayField(base_field, size, remove_trailing_nulls=False)`

Láimhseálann an réimse seo eagair tríd an réimse bunúsach a atáirgeadh líon seasta uaireanta

#### `base_field`

Is argóint riachtanach é seo. Sonraíonn sé an réimse foirme atá le hathdhéanamh arís.

#### `size`

Is é seo an líon seasta uaireanta a úsáidfear an réimse bunúsach.

#### `remove_trailing_nulls`

De réir réamhshocraithe, tá sé seo socraithe go `False`. Nuair a bhíonn “False”, stóráiltear gach luach ó na réimsí arís agus arís eile. Nuair a bheidh sé socraithe go “True”, bainfear aon luachanna rianacha atá bán as an toradh. Má tá `required=True` sa réimse bunúsach, ach is é `` `True `` remove\_trailing\_nulls\`, ansin ní cheadaítear luachanna null ach ag an deireadh, agus scriosfar iad.

Roinnt samplaí:

```
SplitArrayField(IntegerField(required=True), size=3, remove_trailing_nulls=False)

["1", "2", "3"]  # -> [1, 2, 3]
["1", "2", ""]  # -> ValidationError - third entry required.
["1", "", "3"]  # -> ValidationError - second entry required.
["", "2", ""]  # -> ValidationError - first and third entries required.

SplitArrayField(IntegerField(required=False), size=3, remove_trailing_nulls=False)

["1", "2", "3"]  # -> [1, 2, 3]
["1", "2", ""]  # -> [1, 2, None]
["1", "", "3"]  # -> [1, None, 3]
["", "2", ""]  # -> [None, 2, None]

SplitArrayField(IntegerField(required=True), size=3, remove_trailing_nulls=True)

["1", "2", "3"]  # -> [1, 2, 3]
["1", "2", ""]  # -> [1, 2]
["1", "", "3"]  # -> ValidationError - second entry required.
["", "2", ""]  # -> ValidationError - first entry required.

SplitArrayField(IntegerField(required=False), size=3, remove_trailing_nulls=True)

["1", "2", "3"]  # -> [1, 2, 3]
["1", "2", ""]  # -> [1, 2]
["1", "", "3"]  # -> [1, None, 3]
["", "2", ""]  # -> [None, 2]
```

### `HStorefield`

#### `class HStoreField`

Réimse a ghlacann le sonraí ionchódaithe JSON le haghaidh an:class: ~django.contrib.postgres.fields.hStoreField. Caitheann sé gach luach (seachas neamhaill) chuig teaghráin. Léirítear é ag HTML \<textarea\>\`\`\`.

> **Foirmeacha atá cairdiúil don**
>
> Níl hStorefield an-chairdiúil le húsáid i bhformhór na gcásanna, ach is bealach úsáideach é chun sonraí a fhormáidiú ó ghuirléid taobh an chliaint le cur isteach chuig an bhfreastalaí.

> **Note**
>
> Uaireanta d'fhéadfadh sé a bheith úsáideach na heochracha atá bailí do réimse ar leith a cheangal nó a shrianadh. Is féidir é seo a dhéanamh ag baint úsáide as an:class: ~django.contrib.postgres.validators.keysValidator.

### Réimsí Raon

Tá feidhmiúlacht chosúil ag an ngrúpa réimsí seo go léir chun glacadh le sonraí ra Tá siad bunaithe ar:class: ~django.forms.MultivalueField. Déileálann siad le luach amháin a fhágtar amach mar raon neamhtheoranta. Bailíonn siad freisin nach bhfuil an teorainn íochtarach níos mó ná an teorainn uachtarach. Úsáideann na réimsí seo go léir:class: ~django.contrib.postgres.forms.rangeWidget.

#### `Réimse Iomlána`

#### `class IntegerRangeField`

Bunaithe ar:class: ~django.forms.IntegerField agus aistríonn a ionchur go `django.db.backends.postgresql.psycopg_any.numericRange`. Réamhshocraithe le haghaidh: aicme: ~django.contrib.postgres.fields.IntegerRangeField agus:class: ~django.contrib.postgres.fields.bigintegerRangeField.

#### `Deimalrangefield`

#### `class DecimalRangeField`

Bunaithe ar:class: ~Django.Forms.DecimalField agus aistríonn a ionchur go `django.db.backends.postgresql.psycopg_any.numericRange`. Réamhshocraithe le haghaidh: aicme: ~django.contrib.postgres.fields.DecimalRangeField.

#### `DataTimerangeField`

#### `class DateTimeRangeField`

Bunaithe ar:class: ~django.forms.DateTimeField agus aistríonn a ionchur go `django.db.backends.postgresql.psycopg_any.DateTimetzRange`. Réamhshocraithe le haghaidh: aicme: ~django.contrib.postgres.fields.dateTimeRangeField.

#### `Daterangefield`

#### `class DateRangeField`

Bunaithe ar:class: ~Django.Forms.DateField agus aistríonn a ionchur go `Django.db.backends.postgresql.psycopg_any.daterange`. Réamhshocraithe le haghaidh: aicme: ~django.contrib.postgres.fields.DateRangeField.

## Giuirléidí

### `RangeWidget`

#### `class RangeWidget(base_widget, attrs=None)`

Giuirléid a úsáideann gach ceann de na réimsí raon. Bunaithe ar:aicme: ~django.forms.multiwidget.

[`RangeWidget`](#django.contrib.postgres.forms.RangeWidget) has one required argument:

#### `base_widget`

A: Aicme: Cuimsíonn ~ RangeWidget 2-tuple de `base_widget`.

#### `decompress(value)`

Tógann sé luach amháin “comhbhrúite” de réimse, mar shampla a:class: ~django.contrib.postgres.fields.DateRangeField, agus filleann sé tuipéar a léiríonn ceann íochtarach agus uachtarach.
