Réimsí foirmLink to this heading
- class FieldLink to this definition
Nuair a chruthaíonn tú rang Foirme, is é an chuid is tábhachtaí ná réimsí na foirme a shainiú. Tá loighic bailíochtaithe saincheaptha ag gach réimse, mar aon le cúpla crúca eile.
- Field.clean(value)Link to this definition
Cé go bhfuil an príomhbhealach a úsáidfidh tú ranganna Field i ranganna Foirme, is féidir leat iad a chur i bhfeidhm agus iad a úsáid go díreach chun tuairim níos fearr a fháil ar an gcaoi a n-oibríonn siad. Tá modh clean () ``ag gach cás ``Field`, a thógann argóint amháin agus a ardaíonn eisceacht ``Django.Core.Exceptions.ValidationError nó a thugann an luach glan ar ais:
>>> from django import forms
>>> f = forms.EmailField()
>>> f.clean("foo@example.com")
'foo@example.com'
>>> f.clean("invalid email address")
Traceback (most recent call last):
...
ValidationError: ['Enter a valid email address.']
Argóintí lárnach réimseLink to this heading
Glacann gach tógálaí ranga Field` ar a laghad na hargóintí seo. Glacann roinnt ranganna ``Réimse argóintí breise, atá sonrach le réimse, ach ba cheart glacadh leis na rudaí seo a leanas i gcónaí*:
`riachtanaiLink to this heading
- Field.requiredLink to this definition
De réir réamhshocraithe, glacann gach rang Field go bhfuil an luach ag teastáil, mar sin má chuireann tú luach folamh -- None nó an teaghrán folamh (``````````) -- ansin ardóidh clean () ``eisceacht ``ValidationError:
>>> from django import forms
>>> f = forms.CharField()
>>> f.clean("foo")
'foo'
>>> f.clean("")
Traceback (most recent call last):
...
ValidationError: ['This field is required.']
>>> f.clean(None)
Traceback (most recent call last):
...
ValidationError: ['This field is required.']
>>> f.clean(0)
'0'
>>> f.clean(True)
'True'
>>> f.clean(False)
'False'
Chun a shonrú go bhfuil réimse *ní gá, cuir required=False chuig an tógálaí Field:
>>> f = forms.CharField(required=False)
>>> f.clean("foo")
'foo'
>>> f.clean("")
''
>>> f.clean(None)
''
>>> f.clean(0)
'0'
>>> f.clean(True)
'True'
>>> f.clean(False)
'False'
Má tá required=false ``ag `Field agus má chuireann tú luach folamh ar clean (), ansin cuirfidh clean () ``luach folm*normalaithe* ar ais seachas ``ValidationError` a ardú. Maidir le charfield, cuirfidh sé seo ar ais: attr: ~charfield.empty_value atá réamhshocraithe go sreang folamh. Maidir le ranganna eile Field`, d'fhéadfadh sé a bheith ``None. (Athraíonn sé seo ó réimse go réimse.)
Tá an tréith HTML “riachtanach” ag giuirléidí de réimsí foirme riachtanacha. Socraigh an tréith: attr: Form.USE_REQUIRED_ATTRIBUTE le False` chun é a dhíchumasú. Ní chuirtear an tréith “riachtanach” san áireamh ar fhoirmeacha foirmeacha mar b'fhéidir nach mbeidh bailíochtú an bhrabhsálaí ceart agus foirmeacha á gcur leis agus á scriosadh.
lipéadLink to this heading
- Field.labelLink to this definition
Ligeann an argóint lipéad duit an lipéad “atá cairdiúil don duine” don réimse seo a shonrú. Úsáidtear é seo nuair a thaispeántar an Réimse i Foirm`.
As explained in Foirmeacha a chur amach mar HTML, the default label for a
Field is generated from the field name by converting all underscores to
spaces and upper-casing the first letter. Specify a string for label if
that default behavior doesn't result in an adequate label. Use an empty string
("") to hide the label.
Seo sampla iomlán Foirm ``a chuireann `lipéad i bhfeidhm do dhá cheann dá réimsí. Tá auto_id=false` sonraithe againn chun an t-aschur a shimpliú:
>>> from django import forms
>>> class CommentForm(forms.Form):
... name = forms.CharField(label="Your name")
... url = forms.URLField(label="Your website", required=False)
... comment = forms.CharField()
...
>>> f = CommentForm(auto_id=False)
>>> print(f)
<div>Your name:<input type="text" name="name" required></div>
<div>Your website:<input type="url" name="url"></div>
<div>Comment:<input type="text" name="comment" required></div>
iarmhair_lipéadLink to this heading
- Field.label_suffixLink to this definition
Ligeann an argóint label_suffix` duit an fhoirm 's:attr: ~django.forms.form.label_suffix a shárú ar bhonn in aghaidh an réimse:
>>> class ContactForm(forms.Form):
... age = forms.IntegerField()
... nationality = forms.CharField()
... captcha_answer = forms.IntegerField(label="2 + 2", label_suffix=" =")
...
>>> f = ContactForm(label_suffix="?")
>>> print(f)
<div><label for="id_age">Age?</label><input type="number" name="age" required id="id_age"></div>
<div><label for="id_nationality">Nationality?</label><input type="text" name="nationality" required id="id_nationality"></div>
<div><label for="id_captcha_answer">2 + 2 =</label><input type="number" name="captcha_answer" required id="id_captcha_answer"></div>
tosaitheLink to this heading
- Field.initialLink to this definition
Ligeann an argóint tosaithe duit an luach tosaigh le húsáid a shonrú agus an Réimse seo a rindreáil i Foirme neamhcheangailte.
Chun sonraí tosaigh dinimiciúla a shonrú, féach an paraiméadar: attr: Form.initial.
Is é an cás úsáide seo nuair is mian leat foirm “folamh” a thaispeáint ina ndéantar réimse a thionscnamh go luach áirithe. Mar shampla:
>>> from django import forms
>>> class CommentForm(forms.Form):
... name = forms.CharField(initial="Your name")
... url = forms.URLField(initial="https://")
... comment = forms.CharField()
...
>>> f = CommentForm(auto_id=False)
>>> print(f)
<div>Name:<input type="text" name="name" value="Your name" required></div>
<div>Url:<input type="url" name="url" value="https://" required></div>
<div>Comment:<input type="text" name="comment" required></div>
B'fhéidir go bhfuil tú ag smaoineamh, cén fáth nach rachadh foclóir de na luachanna tosaigh mar shonraí agus an fhoirm á thaispeáint agat? Bhuel, má dhéanann tú é sin, spreagfaidh tú bailíochtú, agus beidh aon earráidí bailíochtaithe san aschur HTML san áireamh:
>>> class CommentForm(forms.Form):
... name = forms.CharField()
... url = forms.URLField()
... comment = forms.CharField()
...
>>> default_data = {"name": "Your name", "url": "https://"}
>>> f = CommentForm(default_data, auto_id=False)
>>> print(f)
<div>Name:
<input type="text" name="name" value="Your name" required>
</div>
<div>Url:
<ul class="errorlist"><li>Enter a valid URL.</li></ul>
<input type="url" name="url" value="https://" required aria-invalid="true">
</div>
<div>Comment:
<ul class="errorlist"><li>This field is required.</li></ul>
<input type="text" name="comment" required aria-invalid="true">
</div>
Sin é an fáth nach dtaispeántar luachanna tosaithe ach le haghaidh foirmeacha neamhcheangailte. Maidir le foirmeacha ceangailte, úsáidfidh an t-aschur HTML na sonraí ceangailte.
Tabhair faoi deara freisin nach n-úsáidtear luachanna tosaithe mar shonraí “fillte” i mbailíochtú mura dtugtar luach réimse áirithe. Is iad luachanna tosaithe amháin atá beartaithe le haghaidh taispeáint foirme tosaigh:
>>> class CommentForm(forms.Form):
... name = forms.CharField(initial="Your name")
... url = forms.URLField(initial="https://")
... comment = forms.CharField()
...
>>> data = {"name": "", "url": "", "comment": "Foo"}
>>> f = CommentForm(data)
>>> f.is_valid()
False
# The form does *not* fallback to using the initial values.
>>> f.errors
{'url': ['This field is required.'], 'name': ['This field is required.']}
In ionad tairiseach, is féidir leat aon ghlaoch a rith freisin:
>>> import datetime
>>> class DateForm(forms.Form):
... day = forms.DateField(initial=datetime.date.today)
...
>>> print(DateForm())
<div><label for="id_day">Day:</label><input type="text" name="day" value="2023-02-11" required id="id_day"></div>
Ní dhéanfar an glaoch a mheas ach amháin nuair a thaispeántar an fhoirm neamhcheangailte, ní nuair a shainmhínítear í.
giuirléidLink to this heading
- Field.widgetLink to this definition
Ligeann an argóint widget duit rang Widget a shonrú le húsáid agus an `Réimse ``seo á rindreáil. Féach: doc: `/ref/forms/giuirléidí `le haghaidh tuilleadh faisnéise.
téacs_cabhrachLink to this heading
- Field.help_textLink to this definition
Ligeann an argóint help_text duit téacs tuairisciúil a shonrú don Field seo. Má sholáthraíonn tú help_text, taispeánfar é in aice leis an Réimse nuair a dhéanfar an Field le ceann de na modhanna áisiúla Foirm (m.sh., ``as_ul () ``).
Cosúil leis an réimse samhail:: attr: ~django.db.models.field.help_text, níl an luach seo ag éalú HTML i bhfoirmeacha a ghintear go huathoibríoch.
Seo sampla iomlán Form a chuireann help_text i bhfeidhm do dhá cheann dá réimsí. Tá auto_id=false` sonraithe againn chun an t-aschur a shimpliú:
>>> from django import forms
>>> class HelpTextContactForm(forms.Form):
... subject = forms.CharField(max_length=100, help_text="100 characters max.")
... message = forms.CharField()
... contact_email = forms.EmailField(help_text="Your email (so we can reply).")
...
>>> f = HelpTextContactForm(auto_id=False)
>>> print(f)
<div>Subject:<div class="helptext">100 characters max.</div><input type="text" name="subject" maxlength="100" required></div>
<div>Message:<input type="text" name="message" required></div>
<div>Contact email:<div class="helptext">Your email (so we can reply).</div><input type="email" name="contact_email" maxlength="320" required></div>
Nuair a bhíonn téacs cabhrach ag réimse tá baint aige lena ionchur ag baint úsáide as an tréith HTML aria-describedby. <input>Má chuirtear an giuirléid i `an <fieldset>sin cuirtear ``aria-describedby leis an eilimint seo, ar shlí eile cuirtear é le``` `giuirléid:
>>> from django import forms
>>> class UserForm(forms.Form):
... username = forms.CharField(max_length=255, help_text="e.g., user@example.com")
...
>>> f = UserForm()
>>> print(f)
<div>
<label for="id_username">Username:</label>
<div class="helptext" id="id_username_helptext">e.g., user@example.com</div>
<input type="text" name="username" maxlength="255" required aria-describedby="id_username_helptext" id="id_username">
</div>
Agus tréith saincheaptha aria-describedby á chur leis, déan cinnte go gcuirfidh tú id ``den eilimint ``help_text (má úsáidtear é) san ord atá ag teastáil san áireamh freisin. Maidir le húsáideoirí léitheoirí scáileáin, léitear tuairiscí ina n-ord cuma laistigh de aria-describedby`:
>>> class UserForm(forms.Form):
... username = forms.CharField(
... max_length=255,
... help_text="e.g., user@example.com",
... widget=forms.TextInput(
... attrs={"aria-describedby": "custom-description id_username_helptext"},
... ),
... )
...
>>> f = UserForm()
>>> print(f["username"])
<input type="text" name="username" aria-describedby="custom-description id_username_helptext" maxlength="255" id="id_username" required>
teachtaireachtaí earráidLink to this heading
- Field.error_messagesLink to this definition
Ligeann an argóint error_messages duit na teachtaireachtaí réamhshocraithe a ardóidh an réimse a shárú. Pas isteach i bhfoclóir le heochracha a mheaitseálann leis na teachtaireachtaí earráide is mian leat a shárú. Mar shampla, seo an teachtaireacht earráide réamhshocraithe:
>>> from django import forms
>>> generic = forms.CharField()
>>> generic.clean("")
Traceback (most recent call last):
...
ValidationError: ['This field is required.']
Agus seo teachtaireacht earráide saincheaptha:
>>> name = forms.CharField(error_messages={"required": "Please enter your name"})
>>> name.clean("")
Traceback (most recent call last):
...
ValidationError: ['Please enter your name']
Sa chuid ranganna Réimse ionsuite `_ thíos, sainmhíníonn gach ``Field na heochracha teachtaireachta earráide a úsáideann sé.
``bailíochtóirí ``Link to this heading
- Field.validatorsLink to this definition
Ligeann an argóint bailíochtaire duit liosta feidhmeanna bailíochtaithe a sholáthar don réimse seo.
Féach na:doc: doiciméadú bailíochtóir le haghaidh tuilleadh eolais. </ref/validators>
logánaitheLink to this heading
- Field.localizeLink to this definition
Cuireann an argóint localize` ar chumas ionchur sonraí foirme a logánú, chomh maith leis an aschur rindreáilte.
Féach an formáid doiciméadú logánaithe le haghaidh tuilleadh eolais.
díchumasaLink to this heading
- Field.disabledLink to this definition
Déanann an argóint boolean díchumasa, nuair a shocraíonn sé go True, réimse foirme a dhíchumasú ag baint úsáide as an tréith HTML disabled ionas nach mbeidh úsáideoirí é in eagar. Fiú má chuireann úsáideoir isteach ar luach an réimse a chuirtear chuig an bhfreastalaí, déanfar neamhaird air i bhfabhar an luach ó shonraí tosaigh na foirme.
ainmne_teimpléadLink to this heading
- Field.template_nameLink to this definition
Ligeann an argóint template_name teimpléad saincheaptha a úsáid nuair a dhéantar an réimse a léiriú le:meth: ~django.forms.boundfield.as_field_group. De réir réamhshocraithe tá an luach seo socraithe go ” django/forms/field.html “. Is féidir é a athrú in aghaidh an réimse tríd an tréith seo a shárú nó níos ginearálta tríd an teimpléad réamhshocraithe a shárú, féach freis:ref: overriding-built-in-field-templates.
bound_field_classLink to this heading
- Field.bound_field_classLink to this definition
The bound_field_class attribute allows a per-field override of
Form.bound_field_class.
Seiceáil an bhfuil athrú tagtha ar na sonraí réimseLink to this heading
``aigh_athraigh () ``Link to this heading
- Field.has_changed()Link to this definition
Úsáidtear an modh has_changed () ``chun a chinneadh an bhfuil luach an réimse athraithe ón luach tosaigh. Tuairisceáin ``True nó False.
See the Form.has_changed documentation for more information.
Ranganna ``Réimse ``tógthaLink to this heading
Ar ndóigh, tagann sraith ranganna Réimse sa leabharlann foirme` a léiríonn riachtanais choiteanna bailíochtaithe. Doiciméadaítear an chuid seo gach réimse ionsuite.
I gcás gach réimse, déanaimid cur síos ar an ngiuirléid réamhshocraithe a úsáidtear mura sonraíonn tú giuirléid`. Sonraímid freisin an luach a chuirtear ar ais nuair a sholáthraíonn tú luach folamh (féach an chuid ar ``riachtan thuas chun a thuiscint cad a chiallaíonn sé sin).
BooleanfieldLink to this heading
- class BooleanField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: CheckboxInput
Luach folamh:
FréagNormalaítear go dtí: Luach Python
Truenó False`.Bailíonn sé gurb é an luach
True(m.sh. seiceáiltear an bosca seiceála) má tárequired=Truesa réimse.Eochracha teachtaireachta earráide:
riachtan
CharfieldLink to this heading
- class CharField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: textInput
Luach folamh: Cibé rud a thug tú mar: attr: empty_value.
Normalaítear go dtí: Sreang.
Úsáid:aicme: ~django.core.validators.maxLengthValidator agus:class: ~django.core.validators.minLengthValidator má chuirtear
max_length ``agus ``min_length`min_length```ar fáil. Seachas sin, tá gach ionchur bailí.Eochracha teachtaireachta earráide:
riachtan,max_length ``, `min_length`
Tá na hargóintí roghnacha seo a leanas ann le haghaidh bailíoch
- max_lengthLink to this definition
- min_lengthLink to this definition
Má chuirtear ar fáil, cinntíonn na hargóintí seo go bhfuil an sreang ar a mhéad nó ar a laghad an fad tugtha.
- stripLink to this definition
Má tá
True(réamhshocraithe), déanfar an luach a bhaint as spás bán tosaigh agus rianúil.
- empty_valueLink to this definition
An luach le húsáid chun “folamh” a léiriú. Réamhshocraithe chuig teaghrán folamh.
Réimse roghnaíLink to this heading
- class ChoiceField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: `Roghnaigh `
Normalaítear go dtí: Sreang.
Bailíonn sé go bhfuil an luach a thugtar ar liosta na roghanna.
Eochracha teachtaireachta earráide:
riachtan, invalid_choice`
D'fhéadfadh go mbeadh
% (value) ssa teachtaireacht earráideinvalid_choice, agus cuirfear an rogha roghnaithe in ionad.Tógann sé argóint breise amháin:
- choicesLink to this definition
<field-choices-enum-types>Ceachtar:term: iterable de dhá thúpla le húsáid mar roghanna don réimse seo, :ref: cineál áireamh `, nó glaoch a thugann athraitheach den sórt sin. Glacann an argóint seo leis na formáidí céanna leis an argóint ``roghna` le réimse samhail. Féach an:ref: `doiciméadú tagartha réimse samhail maidir le roghanna <field-choices>`le haghaidh tuilleadh sonraí. Má tá an argóint inghlaonta, déantar é a mheas gach uair a thionscnaítear foirm an réimse, i dteannta le linn rindreála. Réamhshocraithe ar liosta folamh.
Dáta réimseLink to this heading
- class DateField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: DateInput
Luach folamh: ``Níl ``
Normalaítear go dtí: Rud Python
datetime.date.Bailíonn sé gur datetime.date`, datetime.datetime` nó teaghrán formáidithe i bhformáid dáta áirithe an luach a thugtar.
Eochracha teachtaireachta earráide:
riachtan, neamhbhailí `
Tógann sé argóint roghnach amháin:
- input_formatsLink to this definition
Athraitheach formáidí a úsáidtear chun iarracht a dhéanamh teaghrán a thiontú go réad bailí
datetime.date.
Mura gcuirtear argóint
input_formatsar fáil, tógtar na formáidí ionchuir réamhshocraithe ón bhformáid áitiúil gníomhachDATE_INPUT_FORMATSeochair, nó ó:setting: DATE_INPUT_FORMATS má tá logánú díchumasaithe. Féach freis:doc: `formáid logánaithe' </topics/i18n/formatting>.
DataTimeFieldLink to this heading
- class DateTimeField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: DateTimeInput
Luach folamh: ``Níl ``
Normalaítear go dtí: Rud Python
datetime.datetime.Bailíonn sé gur datetime.datetime`, datetime.date` nó teaghrán formáidithe i bhformáid dáta-ama áirithe an luach a thugtar.
Eochracha teachtaireachta earráide:
riachtan, neamhbhailí `
Tógann sé argóint roghnach amháin:
- input_formatsLink to this definition
Athraitheach formáidí a úsáidtear chun iarracht a dhéanamh teaghrán a thiontú go réad bailí datetime.datetime`, i dteannta formáidí ISO 8601.
Glacann an réimse i gcónaí le teaghráin i ndátaí formáidithe ISO 8601 nó den chineál céanna aitheanta ar:func: ~django.utils.dateparse.parse_datetime. Is iad roinnt samplaí:
`2006-10-25 14:30:59 ''2006-10-25H 14:30:59 '`'2006-10-25 14:30 '`'2006-10-25T 14:30 '``'2006-10-25H 14:30 AR ``
'2006-10-25H 14:30 + 02:00 '`'2006-10-25'
Mura gcuirtear argóint
input_formatsar fáil, tógtar na formáidí ionchuir réamhshocraithe ón bhformáid áitiúil gníomhachDATETIME_INPUT_FORMATSagusDATE_INPUT_FORMATSeochracha, nó ó:setting: DATE_INPUT_FORMATS má dhíchumasaítear logánú. Féach freis:doc: `formáid logánaithe' </topics/i18n/formatting>.
DecimalfieldLink to this heading
- class DecimalField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: NumberInput nuai:attr: Field.Localize is
False, eile: class: TextInput.Luach folamh: ``Níl ``
Normalaítear go dtí: A Python
deachimal.Bailíonn sé gur deachúil é an luach a thugtar. Úsáid:aicme: ~django.core.validators.maxvalueValidator agus:class: ~django.core.validators.minvalueValidator má chuirtear
max_valueagusmin_valuear fáil. Úsáid:aicme: ~django.core.validators.stepvalueValidator má chuirtearstep_sizear fáil. Déantar neamhaird de spás bán ceannródaíoch agus leantach.Eochracha teachtaireachta earráide:
riachtan, neamhbhailí`, luach_maxe`, luach_mine`, uas_digits`, max_decimal_places`, max_whole_digits`, step_size`.
D'fhéadfadh go mbeadh
% (limit_value) ssna teachtaireachtaí earráidemax_valueagusmin_value, a chuirfear an teorainn iomchuí in ionad. Ar an gcaoi chéanna, d'fhéadfadh go mbeadh % (max) s` sna teachtaireachtaí earráidemax_digits, max_decimal_places` agusmax_whole_digits.Tógann sé cúig argóint roghnach:
- max_valueLink to this definition
- min_valueLink to this definition
Rialaíonn siad seo an raon luachanna a cheadaítear sa réimse, agus ba cheart iad a thabhairt mar luachanna ``Decimal.Decimal`.
- max_digitsLink to this definition
An líon uasta na ndigití (iad siúd roimh an bpointe deachúil móide iad siúd tar éis an phointe deachúil, le nialais tosaigh a scriosadh) a cheadaítear sa luach.
- decimal_placesLink to this definition
An líon uasta na n-áiteanna deachúil a cheadaítear.
- step_sizeLink to this definition
Cuir ionchuir bailí a theorannú go iolrach dhílis de
step_size. Má chuirtearmin_valuear fáil freisin, cuirtear é leis mar fhritháireamh chun a fháil amach an bhfuil méid an chéim ag teacht leis.
Réimse tréimhseachLink to this heading
- class DurationField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: textInput
Luach folamh: ``Níl ``
Déanann sé normalú go: A Python: Class: ~python: datetime.timedelta.
Bailíonn sé gur sreang é an luach a thugtar ar féidir é a thiontú ina ``timedel`. Ní mór an luach a bheith idir: attr: datetime.timedelta.min agus:attr: datetime.timedelta.max.
Eochracha teachtaireachta earráide:
riachtan, neamhbhailí `, overflow`.
Glacann sé le haon fhormáid a thuige:func: ~django.utils.dateparse.parse_duration.
Réimse ríomhphostLink to this heading
- class EmailField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: emailInput
Luach folamh: Cibé rud a thug tú mar empty_value`.
Normalaítear go dtí: Sreang.
Úsáid:Class: ~django.core.validators.emailValidator chun a bhailíochtú gur seoladh ríomhphoist bailí é an luach a thugtar, ag baint úsáide as léiriú rialta measartha casta.
Eochracha teachtaireachta earráide:
riachtan, neamhbhailí `
Tá na hargóintí roghnacha
max_length ``, `min_length, agusempty_valuea oibríonn díreach mar a dhéanann siad le haghaidh: class: charfield. Tá an argóint ``max_length ``réamhshocraithe go 320 (féach: rfc: 3696 #section -3).
FileFieldLink to this heading
- class FileField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: ClearableFileInput
Luach folamh: ``Níl ``
Normalaíonn sé go: Rud UploadedFile` a fhilleann ábhar an chomhaid agus ainm an chomhaid i réad amháin.
Is féidir a bhailíochtú go bhfuil sonraí comhad neamh-folamh ceangailte leis an bhfoirm.
Eochracha teachtaireachta earráide:
riachtan, neamhbhailí`,easna, folamh `, max_length`
Tá na hargóintí roghnacha ann maidir le bailíochtú:
max_length ``agus ``allow_empty_file. Má chuirtear ar fáil, cinntíonn siad seo go bhfuil ainm an chomhaid ar a mhéad an fad tugtha, agus go n-éireoidh leis an mbailíochtú fiú má tá ábhar an chomhaid folamh.Chun tuilleadh eolais a fhoghlaim faoin réad
uploadedfile, féach na:doc: doiciméadú uaslódála comhad. </topics/http/file-uploads><binding-uploaded-files>Nuair a úsáideann tú
FileFieldi bhfoirm, ní mór duit cuimhneamh freisin to:ref: `sonraí an chomhaid a cheangal leis an bhfoirm `.Tagraíonn an earráid
max_length ``d'fhad an ainm comhaid. Sa teachtaireacht earráide don eochair sin, cuirfear an fad uasta ainm comhaid in ionad `% (max) dagus cuirfear an fad ainm comhaid reatha in ionad % (length) d`.
FilePathfieldLink to this heading
- class FilePathField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: `Roghnaigh `
Normalaítear go dtí: Sreang.
Bailíonn sé go bhfuil an rogha roghnaithe ar liosta na roghanna.
Eochracha teachtaireachta earráide:
riachtan, invalid_choice`
Ligeann an réimse roghnú ó chomhaid taobh istigh de eolaire áirithe Tógann sé cúig argóint breise; ní theastaíonn ach
path:- pathLink to this definition
An cosán iomlán chuig an eolaire a bhfuil a n-ábhar is mian leat liostaithe. Caithfidh an t-eolaire seo a bheith ann.
- recursiveLink to this definition
Má tá
False(an réamhshocraithe) ní thairgfear ach ábhar díreachpathmar roghanna. Má tá “Fíor”, cuirfear an t-eolaire isteach go athshlánach agus liostófar gach sliocht mar roghanna.
- matchLink to this definition
Patrún abairt rialta; ní cheadófar ach comhaid le hainmneacha a mheaitseálann leis an abairt seo mar roghanna.
- allow_filesLink to this definition
Optional. Either
TrueorFalse. Default isTrue. Specifies whether files in the specified location should be included. Either this orallow_foldersmust beTrue.
- allow_foldersLink to this definition
Optional. Either
TrueorFalse. Default isFalse. Specifies whether folders in the specified location should be included. Either this orallow_filesmust beTrue.
FilePathFieldhas the following method:- set_choices()Link to this definition
-
Scans the directory at
pathand refreshes the field's choices. This is called automatically during__init__(), but it can also be called explicitly to pick up files added to the directory after the field was first instantiated (usually at server startup). For example, call it in a form's__init__()to get fresh choices per request:class MyForm(forms.Form): my_file = forms.FilePathField(path="/path/to/dir") def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.fields["my_file"].set_choices()
``Floatfield ``Link to this heading
- class FloatField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: NumberInput nuai:attr: Field.Localize is
False, eile: class: TextInput.Luach folamh: ``Níl ``
Normalaítear go dtí: Snámhphointe Python.
Bailíonn sé gur snámhphointe an luach a thugtar. Úsáid:aicme: ~django.core.validators.maxvalueValidator agus:class: ~django.core.validators.minvalueValidator má chuirtear
max_valueagusmin_valuear fáil. Úsáid:aicme: ~django.core.validators.stepvalueValidator má chuirtearstep_sizear fáil. Ceadaítear spás bán tosaigh agus rianaithe, mar atá i bhfeidhm ``float () ``Python.Eochracha teachtaireachta earráide:
riachtan,neamhbhailí, luach_maxe`, luach_min`, step_size`.
Tógann sé trí argóint roghnacha:
- max_valueLink to this definition
- min_valueLink to this definition
Rialaíonn siad seo an raon luachanna a cheadaítear sa réimse.
- step_sizeLink to this definition
Cuir ionchuir bailí a theorannú go iolrach dhílis de
step_size. Má chuirtearmin_valuear fáil freisin, cuirtear é leis mar fhritháireamh chun a fháil amach an bhfuil méid an chéim ag teacht leis.
GenericipAddressFieldLink to this heading
- class GenericIPAddressField(**kwargs)Link to this definition
Réimse ina bhfuil IPv4 nó seoladh IPv6.
Giuirléid réamhshocraithe: :class: textInput
Normalaítear go dtí: Sreang. Déantar seoltaí IPv6 a normalú mar a thuairiscítear thíos.
Bailíonn sé gur seoladh IP bailí é an luach a thugtar.
Error message keys:
required,invalid,max_length
Leanann normalú an seoladh IPv6: rfc: 4291 #section -2.2 alt 2.2, lena n-áirítear úsáid a bhaint as an bhformáid IPv4 a mholtar i mír 3 den chuid sin, cosúil le
: :ffff:192.0.2.0. Mar shampla, bheadh2001:0:: 0:01normalaithe go2001: :1, agus: :ffff:0a0a0ago``: :ffff:10.10.10``. Déantar gach carachtar a thiontú go litreacha beaga.Tógann sé trí argóint roghnacha:
- protocolLink to this definition
Teoraíonn sé ionchuir bailí don phrótacal sonraithe. Is iad na luachanna a nglactar leo ná
an bheirt ``(réamhshocraithe), ``IPv4nóIPv6. Tá an meaitseáil neamh-íogair.
- unpack_ipv4Link to this definition
Díphacáil seoltaí mapáilte IPv4 mar
:: ffff: 192.0.2.1. Má tá an rogha seo cumasaithe déanfaí an seoladh sin a dhíphacáil go192.0.2.1 ``. Tá réamhshocrú díchumasaithe. Ní féidir é a úsáid ach amháin nuair a shocraítear ``prótacolgo ``beach'.
- max_lengthLink to this definition
Defaults to 39, and behaves the same way as it does for
CharField.
ImageFieldLink to this heading
- class ImageField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: ClearableFileInput
Luach folamh: ``Níl ``
Normalaíonn sé go: Rud UploadedFile` a fhilleann ábhar an chomhaid agus ainm an chomhaid i réad amháin.
Bailíonn sé go bhfuil sonraí comhaid ceangailte leis an bhfoirm. Úsáideann sé freisin: class: ~django.core.validators.fileExtensionValidator chun a bhailíochtú go dtacaíonn Pillow leis an síneadh comhaid.
Eochracha teachtaireachta earráide:
riachtan, neamhbhailí`,easna, folam`,invalid_image
Ag baint úsáide as
ImageFieldis gá go bhfuil: pypi: pillow suiteáilte le tacaíocht do na formáidí íomhá a úsáideann tú. Má bhíonn earráid “íomhá truaillithe” ort nuair a uaslódálann tú íomhá, ciallaíonn sé de ghnáth nach dtuigeann Pillow a fhormáid. Chun é seo a shocrú, suiteáil an leabharlann cuí agus athshuiteáil Pillow.<binding-uploaded-files>Nuair a úsáideann tú
ImageFieldar fhoirm, ní mór duit cuimhneamh freisin to:ref: `sonraí an chomhaid a cheangal leis an bhfoirm `.Tar éis an réimse a ghlanadh agus a bhailíochtú, beidh tréith “íomhá” breise ag an réad
uploadedfileina bhfuil an sampla Pillow Image a úsáidtear chun seiceáil an raibh an comhad ina íomhá bailí. Dúnann Pillow an tuairisceoir comhaid bunúsach tar éis íomhá a fhíorú, mar sin cé go bhfuil tréithe sonraí neamh-íomhá, mar shampla ``formáid`, airde `, agus leithead, ar fáil, ní féidir modhanna a bhaineann rochtain ar shonraí íomhá bunúsacha, mar shampla ``getdata () nó `getpixel (), a úsáid gan an comhad a athoscailt. Mar shampla:>>> from PIL import Image >>> from django import forms >>> from django.core.files.uploadedfile import SimpleUploadedFile >>> class ImageForm(forms.Form): ... img = forms.ImageField() ... >>> file_data = {"img": SimpleUploadedFile("test.png", b"file data")} >>> form = ImageForm({}, file_data) # Pillow closes the underlying file descriptor. >>> form.is_valid() True >>> image_field = form.cleaned_data["img"] >>> image_field.image <PIL.PngImagePlugin.PngImageFile image mode=RGBA size=191x287 at 0x7F5985045C18> >>> image_field.image.width 191 >>> image_field.image.height 287 >>> image_field.image.format 'PNG' >>> image_field.image.getdata() # Raises AttributeError: 'NoneType' object has no attribute 'seek'. >>> image = Image.open(image_field) >>> image.getdata() <ImagingCore object at 0x7f5984f874b0>Ina theannta sin, déanfar
uploadedfile.content_typea nuashonrú le cineál ábhair na híomhá más féidir le Pillow é a chinneadh, ar shlí eile socraítear é go ``None ``.
Réimse iomlánaLink to this heading
- class IntegerField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: NumberInput nuai:attr: Field.Localize is
False, eile: class: TextInput.Luach folamh: ``Níl ``
Normalaítear go dtí: Sláimhir Python.
Bailíonn sé gur sláimhir é an luach a thugtar. Úsáid:aicme: ~django.core.validators.maxvalueValidator agus:class: ~django.core.validators.minvalueValidator má chuirtear
max_valueagusmin_valuear fáil. Úsáid:aicme: ~django.core.validators.stepvalueValidator má chuirtearstep_sizear fáil. Ceadaítear spás bán tosaigh agus rianaithe, mar atá i bhfeidhm ``int () ``Python.Eochracha teachtaireachta earráide:
riachtan,neamhbhailí ``, `luach_maxe, luach_min`, méide_step`
D'fhéadfadh go mbeadh
% (limit_value) ssna teachtaireachtaí earráidemax_value, min_value` agusstep_size, % (limit_value) s`, a chuirfear an teorainn iomchuí in ionad.Glacann sé trí argóint roghnach le haghaidh bailíochtú:
- max_valueLink to this definition
- min_valueLink to this definition
Rialaíonn siad seo an raon luachanna a cheadaítear sa réimse.
- step_sizeLink to this definition
Cuir ionchuir bailí a theorannú go iolrach dhílis de
step_size. Má chuirtearmin_valuear fáil freisin, cuirtear é leis mar fhritháireamh chun a fháil amach an bhfuil méid an chéim ag teacht leis.
JsonfieldLink to this heading
- class JSONField(encoder=None, decoder=None, **kwargs)Link to this definition
Réimse a ghlacann le sonraí ionchódaithe JSON do a:class: ~django.db.models.jsonField.
Giuirléid réamhshocraithe: :class: Textarea
Luach folamh: ``Níl ``
Normalaítear go dtí: Léiriú Python ar an luach JSON (de ghnáth mar
dict, liost`, nóNone), ag brath ar:attr: JSONfield.decoder.Bailíonn sé gur JSON bailí é an luach a thugtar.
Eochracha teachtaireachta earráide:
riachtan, neamhbhailí `
Glacann sé dhá argóint roghnach:
- encoderLink to this definition
A
json.JSONEncodersubclass to serialize data types not supported by the standard JSON serializer (e.g.datetime.datetimeorUUID). For example, you can use theDjangoJSONEncoderclass.Réamhshocraithe go
JSON.JSONEncoder.
- decoderLink to this definition
A
json.JSONDecodersubclass to deserialize the input. Your deserialization may need to account for the fact that you can't be certain of the input type. For example, you run the risk of returning adatetimethat was actually a string that just happened to be in the same format chosen fordatetimes.The
decodercan be used to validate the input. Ifjson.JSONDecodeErroris raised during the deserialization, aValidationErrorwill be raised.Réamhshocraithe go
JSON.JSONDecoder.
MultiplechoiceFieldLink to this heading
- class MultipleChoiceField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: SelectMultiple
Luach folamh:
[](liosta folamh)Normalaítear go: Liosta de na teaghráin.
Bailíonn sé go bhfuil gach luach sa liosta luachanna ar leith i liosta na roghanna.
Eochracha teachtaireachta earráide:
riachtan, invalid_choice`, invalid_list`
D'fhéadfadh go mbeadh
% (value) ssa teachtaireacht earráideinvalid_choice, agus cuirfear an rogha roghnaithe in ionad.Glacann sé argóint breise riachtanach amháin,
roghna, mar atá le haghaidh: class: roghnaíon.
NullbooleanfieldLink to this heading
- class NullBooleanField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: NullBooleanSelect
Luach folamh: ``Níl ``
Normalaítear go dtí: Luach Python
True, False` nóNone.Ní bhailíonn sé rud ar bith (ie, ní ardaíonn sé
ValidationErrorriamh).
Is féidir
NullBooleanFielda úsáid le giuirléidí amsúil:class: ~django.forms.select nó:class: ~django.forms.radioSelect tríd an giuirléidroghnaithea sholáthar:NullBooleanField( widget=Select( choices=[ ("", "Unknown"), (True, "Yes"), (False, "No"), ] ) )
RegexfieldLink to this heading
- class RegexField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: textInput
Luach folamh: Cibé rud a thug tú mar empty_value`.
Normalaítear go dtí: Sreang.
Úsáid:Class: ~django.core.validators.regexValidator chun a bhailíochtú go bhfuil an luach tugtha comhoiriúnach le léiriú rialta áirithe.
Eochracha teachtaireachta earráide:
riachtan, neamhbhailí `
Tógann sé argóint riachtanach amháin:
- regexLink to this definition
Léiriú rialta a shonraítear mar shreang nó mar réad abairt rialta tiomsaithe.
Glacann sé freisin
max_length ``, `min_length, strip`, agusempty_valuea oibríonn díreach mar a dhéanann siad do:class: charfield.- stripLink to this definition
Réamhshocraithe go
False. Má tá sé cumasaithe, cuirfear stialladh i bhfeidhm roimh an bhailíochtú regex.
SlugfieldLink to this heading
- class SlugField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: textInput
Luach folamh: Cibé rud a thug tú mar: attr: empty_value.
Normalaítear go dtí: Sreang.
Úsáid:aicme: ~django.core.validators.validate_slug nó:class: ~django.core.validators.validate_unicode_slug chun a bhailíochtú nach bhfuil ach litreacha, uimhreacha, béim agus braithíní sa luach tugtha.
Teachtaireachtaí earráide:
riachtan, neamhbhailí`
Tá an réimse seo beartaithe le húsáid chun samhail:class: ~django.db.models.slugfield a léiriú i bhfoirmeacha.
Glacann sé dhá pharaiméadar roghnach
- allow_unicodeLink to this definition
Boolean a thugann treoir don réimse glacadh le litreacha Unicode i dteannta le litreacha ASCII. Réamhshocraithe go
False.
- empty_valueLink to this definition
An luach le húsáid chun “folamh” a léiriú. Réamhshocraithe chuig teaghrán folamh.
``Réimse ama ``Link to this heading
- class TimeField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: TimeInput
Luach folamh: ``Níl ``
Normalaítear go dtí: Rud Python
datetime.time.Bailíonn sé gur datetime.time` nó teaghrán formáidithe i bhformáid ama áirithe an luach a thugtar.
Eochracha teachtaireachta earráide:
riachtan, neamhbhailí `
Tógann sé argóint roghnach amháin:
- input_formatsLink to this definition
Athraitheach formáidí a úsáidtear chun iarracht a dhéanamh teaghrán a thiontú go réad bailí
datetime.time.
Mura gcuirtear argóint
input_formatsar fáil, tógtar na formáidí ionchuir réamhshocraithe ón bhformáid áitiúil gníomhachTIME_INPUT_FORMATSeochair, nó ó:setting: TIME_INPUT_FORMATS má tá logánú díchumasaithe. Féach freis:doc: `formáid logánaithe' </topics/i18n/formatting>.
TypedChoiceFieldLink to this heading
- class TypedChoiceField(**kwargs)Link to this definition
Díreach cosúil le a:class: choicefield, except:class: TypedChoiceField glacann dhá argóint breise, :attr: coerce agus:attr: empty_value.
Giuirléid réamhshocraithe: :class: `Roghnaigh `
Luach folamh: Cibé rud a thug tú mar: attr: empty_value.
Déanann sé normalú go: Luach den chineál a sholáthraíonn an argóint:attr: coerce.
Bailíonn sé go bhfuil an luach a thugtar ar liosta na roghanna agus gur féidir é a chur iallach.
Eochracha teachtaireachta earráide:
riachtan, invalid_choice`
Tógann sé argóintí breise:
- coerceLink to this definition
Feidhm a thógann argóint amháin agus a thugann luach éigeantach ar ais. I measc na samplaí tá na
int, float`, bool` agus cineálacha eile ionsuite. Réamhshocraithe ar fheidhm aitheantais. Tabhair faoi deara go dtarlaíonn comhéigean tar éis bailíochtú ionchuir, mar sin is féidir luach nach bhfuil i láthair i “roghanna” a chur i bhfeidhm.
- empty_valueLink to this definition
An luach le húsáid chun “folamh” a léiriú. Réamhshocraithe don teaghrán folamh; Is rogha coitianta eile é
None ``anseo. Tabhair faoi deara nach gcuirfear an luach seo a iallach leis an bhfeidhm a thugtar san argóint ``force, mar sin roghnaigh é dá réir.
TypedMultiplechoiceFieldLink to this heading
- class TypedMultipleChoiceField(**kwargs)Link to this definition
Díreach cosúil le a:class: MultipleChoiceField, seachas: class: TypedMultipleChoiceField thógann dhá argóint breise,
coerceagusempty_value.Giuirléid réamhshocraithe: :class: SelectMultiple
Luach folamh: Cibé rud a thug tú mar
empty_valueNormalaítear go dtí: Liosta luachanna den chineál a sholáthraíonn an argóint ``forbairt ``.
Bailíonn sé go bhfuil na luachanna a thugtar ar liosta na roghanna agus gur féidir iad a chur iallach.
Eochracha teachtaireachta earráide:
riachtan, invalid_choice`
D'fhéadfadh go mbeadh
% (value) ssa teachtaireacht earráideinvalid_choice, agus cuirfear an rogha roghnaithe in ionad.Glacann sé dhá argóint bhreise,
coerceagus empty_value`, mar atá le haghaidh: class: TypedChoiceField.
UrlfieldLink to this heading
- class URLField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: Urlinput
Luach folamh: Cibé rud a thug tú mar empty_value`.
Normalaítear go dtí: Sreang.
Úsáid:Class: ~django.core.validators.urlValidator chun a bhailíochtú gur URL bailí é an luach a thugtar.
Eochracha teachtaireachta earráide:
riachtan, neamhbhailí `
Tá na hargóintí roghnacha
max_length ``, `min_length, empty_value` a oibríonn díreach mar a dhéanann siad do:class: charfield, agus argóint amháin eile:- assume_schemeLink to this definition
The scheme assumed for URLs provided without one. Defaults to
"https". For example, ifassume_schemeis"https"and the provided value is"example.com", the normalized value will be"https://example.com".
UuidfieldLink to this heading
- class UUIDField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: textInput
Luach folamh: ``Níl ``
Déanann sé normalú go réad: A: Class: ~Python: UUID.uuid.
Eochracha teachtaireachta earráide:
riachtan, neamhbhailí `
Glacfaidh an réimse seo le haon fhormáid teaghrán a nglactar leis mar argóint
hexdon tógálaí: class: ~python:uuid.uuid.
Ranganna Páirce tógtha beagán castaLink to this heading
CombofieldLink to this heading
- class ComboField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: textInput
Normalaítear go dtí: Sreang.
Bailíonn sé an luach a thugtar i gcoinne gach ceann de na réimsí a shonraítear mar argóint don Combofield.
Eochracha teachtaireachta earráide:
riachtan, neamhbhailí `
Tógann sé argóint riachtanach breise amháin:
- fieldsLink to this definition
Liosta na réimsí ba chóir a úsáid chun luach an réimse a bhailíochtú (san ord ina gcuirtear ar fáil iad).
>>> from django.forms import ComboField >>> f = ComboField(fields=[CharField(max_length=20), EmailField()]) >>> f.clean("test@example.com") 'test@example.com' >>> f.clean("longemailaddress@example.com") Traceback (most recent call last): ... ValidationError: ['Ensure this value has at most 20 characters (it has 28).']
Réimse IlluachaLink to this heading
- class MultiValueField(fields=(), **kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: textInput
Normalaítear go dtí: an cineál a chuirtear ar ais trí mhodh ``comhbhrúiteach` sa fho-aicme.
Bailíonn sé an luach a thugtar i gcoinne gach ceann de na réimsí a shonraítear mar argóint don ``MultivalueField`.
Eochracha teachtaireachta earráide:
riachtan, neamhbhailí `, neamhiomlán`
Comhiomlánann sé loighic réimsí iolracha a tháirgeann luach amháin le chéile.
Tá an réimse seo teibí agus ní mór é a fho-aicmiú. I gcodarsnacht leis na réimsí aonluacha, ní mór fo-aicmí de:class: MultivalueField a chur i bhfeidhme:meth: ~django.forms.field.clean ach ina ionad sin - cur i bhfeidhm: meth: ~MultivalueField.compress.
Tógann sé argóint riachtanach breise amháin:
- fieldsLink to this definition
A tuple of fields whose values are cleaned and subsequently combined into a single value. Each value of the field is cleaned by the corresponding field in
fields-- the first value is cleaned by the first field, the second value is cleaned by the second field, etc. Once all fields are cleaned, the list of clean values is combined into a single value bycompress().
Glacann sé roinnt argóintí roghnach freisin:
- require_all_fieldsLink to this definition
Réamhshocraithe go
True, agus sa chás sin ardófar earráid bailíochtaitheriachtanaithemura soláthraítear aon luach d'aon réimse.Nuair a shocraítear é go False`, is féidir an tréith: attr: Field.required a shocrú go
Falsele haghaidh réimsí aonair chun iad a dhéanamh roghnach. Mura gcuirtear aon luach ar fáil do réimse riachtanach, ardófar earráid bailíochtaitheneamhiomlán.Is féidir teachtaireacht earráide réamhshocraithe
neamhchomhlána shainiú ar an bhfo-aicme:class: MultivalueField, nó is féidir teachtaireachtaí éagsúla a shainiú ar gach réimse aonair. Mar shampla:from django.core.validators import RegexValidator class PhoneField(MultiValueField): def __init__(self, **kwargs): # Define one message for all fields. error_messages = { "incomplete": "Enter a country calling code and a phone number.", } # Or define a different message for each field. fields = ( CharField( error_messages={"incomplete": "Enter a country calling code."}, validators=[ RegexValidator(r"^[0-9]+$", "Enter a valid country calling code."), ], ), CharField( error_messages={"incomplete": "Enter a phone number."}, validators=[RegexValidator(r"^[0-9]+$", "Enter a valid phone number.")], ), CharField( validators=[RegexValidator(r"^[0-9]+$", "Enter a valid extension.")], required=False, ), ) super().__init__( error_messages=error_messages, fields=fields, require_all_fields=False, **kwargs )
- widgetLink to this definition
Caithfidh sé a bheith ina fho-aicme de:class: Django.Forms.MultiWidget. Is é an luach réamhshocraithe:class: ~django.forms.textInput, rud nach bhfuil an-úsáideach sa chás seo is dócha.
- compress(data_list)Link to this definition
Tógann sé liosta de luachanna bailí agus cuireann sé leagan “comhbhrúite” de na luachanna sin ar ais - i luach amháin. Mar shampla, :class: Is fo-aicme é splitDateTimeField a chomhcheanglaíonn réimse ama agus réimse dáta i réad
datetime.Caithfear an modh seo a chur i bhfeidhm sna fo-aicmí.
SplitDateTimeFieldLink to this heading
- class SplitDateTimeField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: SplitDateTimeWidget
Luach folamh: ``Níl ``
Normalaítear go dtí: Rud Python
datetime.datetime.Bailíonn sé gur datetime.datetime` nó sreang formáidithe i bhformáid dáta-ama áirithe an luach a thugtar.
Eochracha teachtaireachta earráide:
riachtan, neamhbhailí`, dáta_invalid`, invalid_time`
Glacann sé dhá argóint roghnach:
- input_date_formatsLink to this definition
Liosta de na formáidí a úsáidtear chun iarracht a dhéanamh teaghrán a thiontú go réad bailí
datetime.date.
Mura gcuirtear argóint
input_date_formatsar fáil, úsáidtear na formáidí ionchuir réamhshocraithe le haghaidh: class: DateField.- input_time_formatsLink to this definition
Liosta de na formáidí a úsáidtear chun iarracht a dhéanamh teaghrán a thiontú go réad bailí
datetime.time.
Mura gcuirtear argóint
input_time_formatsar fáil, úsáidtear na formáidí ionchuir réamhshocraithe le haghaidh: class: Timefield.
Réimsí a bhaineann le caidrimhLink to this heading
Two fields are available for representing relationships between
models: ModelChoiceField and
ModelMultipleChoiceField. Both of these fields require a
single queryset parameter that is used to create the choices for
the field. Upon form validation, these fields will place either one
model object (in the case of ModelChoiceField) or multiple model
objects (in the case of ModelMultipleChoiceField) into the
cleaned_data dictionary of the form.
Le haghaidh úsáidí níos casta, is féidir leat querySet = None a shonrú agus an réimse foirme á dhearbhú agus ansin an queryset a líonadh i modh ``__init__ () ``sa fhoirm:
class FooMultipleChoiceForm(forms.Form):
foo_select = forms.ModelMultipleChoiceField(queryset=None)
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields["foo_select"].queryset = ...
Tá tréith literator ag ModelChoiceField` agus ModelMultipleChoiceField araon a shonraíonn an rang a úsáidtear chun athrú thar an tacar fiosrúcháin agus roghanna á ghiniúint. Féach:ref: `roghanna litearálach-caidrim' le haghaidh sonraí.
ModelChoiceFieldLink to this heading
- class ModelChoiceField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: `Roghnaigh `
Luach folamh: ``Níl ``
Normalaítear go dtí: Sampla samhail.
Bailíonn sé go bhfuil an id a thugtar sa tacar ceisteanna.
Eochracha teachtaireachta earráide:
riachtan, invalid_choice`
D'fhéadfadh go mbeadh
% (value) ssa teachtaireacht earráideinvalid_choice, agus cuirfear an rogha roghnaithe in ionad.Ligeann sé réad samhail amháin a roghnú, atá oiriúnach chun eochair eachtrach a léiriú. Tabhair faoi deara go mbíonn an giuirléid réamhshocraithe do `ModelChoiceField ``neamhphraiticiúil nuair a mhéadaíonn líon na n-iontrálacha. Ba chóir duit é a úsáid le haghaidh níos mó ná 100 mír a sheachaint.
Teastaíonn argóint amháin:
- querysetLink to this definition
“QuerySet” de rudaí samhail as a dhíorthaítear na roghanna don réimse agus a úsáidtear chun rogha an úsáideora a bhailíochtú. Déantar é a mheas nuair a dhéantar an fhoirm a rinneadh.
Glacann
ModelChoicefieldroinnt argóintí roghnacha freisin:- empty_labelLink to this definition
By default the
<select>widget used byModelChoiceFieldwill have an empty choice at the top of the list. You can change the text of this label (which is"- Select an option -"by default) with theempty_labelattribute, or you can disable the empty label entirely by settingempty_labeltoNone:# A custom empty label field1 = forms.ModelChoiceField(queryset=..., empty_label="(Nothing)") # No empty label field2 = forms.ModelChoiceField(queryset=..., empty_label=None)Tabhair faoi deara nach gcruthaítear aon rogha folamh (beag beann ar luach
empty_label) má theastaíonnModelChoiceFieldagus má tá luach tosaigh réamhshocraithe aige, nó go socraítear argóintwidgetgo:class: ~django.forms.RadioSelect agus is é: attr: ~ModeliceChofield.blank `False.
- to_field_nameLink to this definition
Úsáidtear an argóint roghnach seo chun an réimse atá le húsáid mar luach na roghanna i ngiuirléid an réimse a shonrú. Bí cinnte gur réimse uathúil é don tsamhail, ar shlí eile d'fhéadfadh an luach roghnaithe níos mó ná réad amháin a mheaitseáil. De réir réamhshocraithe tá sé socraithe go
None, sa chás sin úsáidfear príomh-eochair gach réad. Mar shampla:# No custom to_field_name field1 = forms.ModelChoiceField(queryset=...)bheadh toradh air:
<select id="id_field1" name="field1"> <option value="obj1.pk">Object1</option> <option value="obj2.pk">Object2</option> ... </select>agus:
# to_field_name provided field2 = forms.ModelChoiceField(queryset=..., to_field_name="name")bheadh toradh air:
<select id="id_field2" name="field2"> <option value="obj1.name">Object1</option> <option value="obj2.name">Object2</option> ... </select>
- blankLink to this definition
Agus an giuirléid: class: ~django.forms.RadioSelect á úsáid agat, cinneann an argóint boolean roghnach seo an gcruthaítear rogha folamh. De réir réamhshocraithe, is é
blankFalse`, agus sa chás sin ní chruthaítear aon rogha folamh.
Tá an tréith ag
ModelChoiceFieldfreisin:- iteratorLink to this definition
An rang iterator a úsáidtear chun roghanna réimse a ghiniúint ó
queryset. De réir réamhshocraithe, :class: ModelChoiceIterator.
Glaofar ar an modh
__str__ () ``den mhúnla chun léiriúcháin teaghrán a ghiniúint ar na rudaí le húsáid i roghanna an réimse. Chun ionadaíochtaí saincheaptha a sholáthar, déan fo-aicme ``ModelChoicefieldagus label_from_instance` a shárú. Gheobhaidh an modh seo réad samhail agus ba cheart go gcuirfeadh sreang atá oiriúnach chun é a léiriú ar ais. Mar shampla:from django.forms import ModelChoiceField class MyModelChoiceField(ModelChoiceField): def label_from_instance(self, obj): return "My Object #%i" % obj.id
ModelMultipleChoiceFieldLink to this heading
- class ModelMultipleChoiceField(**kwargs)Link to this definition
Giuirléid réamhshocraithe: :class: SelectMultiple
Luach folamh: An folamh
QuerySet(``self.queryset.none () ``)Normalaítear go dtí: A
QuerySetde chásanna samhail.Bailíonn sé go bhfuil gach id sa liosta luachanna tugtha sa tacar fiosrúcháin.
Eochracha teachtaireachta earráide:
riachtan,invalid_list, invalid_choice`, invalid_pk_value`
D'fhéadfadh go mbeadh % (value) s` sa teachtaireacht
invalid_choiceagus d'fhéadfadh go mbeadh % (pk) s` sa teachtaireachtinvalid_pk_value, agus cuirfear na luachanna cuí in ionad.Ligeann sé réad samhail amháin nó níos mó a roghnú, atá oiriúnach chun caidreamh go leor le go leor a léiriú. Mar atá le: class: ModelChoiceField, is féidir leat
label_from_instancea úsáid chun na léirithe réad a shaincheapadh.Teastaíonn argóint amháin:
- querysetLink to this definition
Mar an gcéanna len:class: ModelChoiceField.QuerySet.
Tógann sé argóint roghnach amháin:
- to_field_nameLink to this definition
Mar an gcéanna len:class: ModelChoiceField.to_Field_Nam.
Tá an tréith ag
ModelMultipleChoiceFieldfreisin:- iteratorLink to this definition
Mar an gcéanna len:class: ModelChoiceField.iterator.
Roghanna caidrimh athraitheachaLink to this heading
De réir réamhshocraithe, :class: ModelChoiceField agus:class: ModelMultipleChoiceField úsáid:class: ModelChoiceIterator chun a réimse roghnaithe a ghiniúint.
Nuair a dhéantar athrá, tugann ModelChoiceIterator` roghanna 2-thúpla ina bhfuil: class: ModelChoiceIteratorValue cásanna mar an chéad eilimint luach i ngach rogha. <option>Fillteann ModelChoiceIteratorValue an luach rogha agus tagairt á choinneáil don shampla samhail foinse is féidir a úsáid i bhfeidhmiú giuirléid saincheaptha, mar shampla, chun sonraí-* tréithe `_ a chur le ``` eilimintí.
Mar shampla, smaoinigh ar na samhlacha seo a leanas:
from django.db import models
class Topping(models.Model):
name = models.CharField(max_length=100)
price = models.DecimalField(decimal_places=2, max_digits=6)
def __str__(self):
return self.name
class Pizza(models.Model):
topping = models.ForeignKey(Topping, on_delete=models.CASCADE)
<option>Is féidir leat fo-aicme giuirléid a:class: ~django.forms.select a úsáid chun luach Topping.price a áireamh mar an tréith HTML sonraí-praghas do gach eilimint ```:
from django import forms
class ToppingSelect(forms.Select):
def create_option(
self, name, value, label, selected, index, subindex=None, attrs=None
):
option = super().create_option(
name, value, label, selected, index, subindex, attrs
)
if value:
option["attrs"]["data-price"] = value.instance.price
return option
class PizzaForm(forms.ModelForm):
class Meta:
model = Pizza
fields = ["topping"]
widgets = {"topping": ToppingSelect}
Tabharfaidh sé seo an roghnú Pizza.Topping mar:
<select id="id_topping" name="topping" required>
<option value="" selected>---------</option>
<option value="1" data-price="1.50">mushrooms</option>
<option value="2" data-price="1.25">onions</option>
<option value="3" data-price="1.75">peppers</option>
<option value="4" data-price="2.00">pineapple</option>
</select>
Le haghaidh úsáide níos airde, féadfaidh tú fo-aicme ModelChoiceIterator d'fhonn na roghanna 2-tuple a fhaightear a shaincheapadh.
ModelChoiceLiteratorLink to this heading
- class ModelChoiceIterator(field)Link to this definition
An rang réamhshocraithe a shanntar don tréith
iteratorde:class: ModelChoiceField agus:class: ModelMultipleChoiceField. Inathraitheach a thugann roghanna 2-tuple ón tacar fiosrúcháin.Teastaíonn argóint amháin:
- fieldLink to this definition
An sampla de
ModelChoiceFieldnóModelMultipleChoiceFieldchun roghanna a athrú agus a tháirgeadh.
Tá an modh seo a leanas ag ModelChoiceIterator`:
- __iter__()Link to this definition
Tugann sé roghanna dhá thiúpla, san fhormáid
(luach, lipéad)a úsáideann: attr: ChoiceField.Choices. Is é a: class: ModelChoiceIteratorValue an chéad eilimintluachsampla.
ModelChoiceLiteratorValueLink to this heading
- class ModelChoiceIteratorValue(value, instance)Link to this definition
Teastaíonn dhá argóint:
- valueLink to this definition
Luach an rogha. <option>Úsáidtear an luach seo chun tréith
luacheilimint HTML ```a léiriú.
- instanceLink to this definition
An tsamhail samhail ón tacar ceisteanna. Is féidir rochtain a fháil ar an gcás i bhfeidhmiú saincheaptha ``choicewidget.create_option () ``chun an HTML rindreáilte a choigeartú.
Tá an modh seo a leanas ag ModelChoiceIteratorValue`:
- __str__()Link to this definition
Tabhair ar ais
luachmar shreang le léiriú i HTML.
Réimsí saincheaptha a chur arLink to this heading
Mura gcomhlíonann na ranganna “Réimse” ionsuite do riachtanais, is féidir leat ranganna saincheaptha Réimse ``a chruthú. Chun seo a dhéanamh, cruthaigh fo-aicme de ``Django.Forms.Field. Is é an t-aon cheanglais atá aige ná go gcuirfidh sé modh glan () `i bhfeidhm agus go nglacfaidh a modh ``__init__ () ``leis na croí-argóintí a luaitear thuas (``riachtan, lip`, lip, tionsc`, widget`, help_text`).
You can also customize how a field will be accessed by overriding
bound_field_class or override
Field.get_bound_field() if you need more flexibility when creating
the BoundField:
- Field.get_bound_field(form, field_name)Link to this definition
Takes an instance of
Formand the name of the field. The returnedBoundFieldinstance will be used when accessing the field in a template.
See Saincheapadh Boundfield for examples of overriding a BoundField.