---
title: "Nótaí scaoilte Django 1.1"
version: 6.0
locale: ga
source: https://docs.djangoproject.com/ga/6.0/releases/1.1/
canonical: https://djangodocs.dev/ga/6.0/releases/1.1/
---
# Nótaí scaoilte Django 1.1

29 Iúil, 2009

Fáilte go dtí Django 1.1!

Cuimsíonn Django 1.1 roinnt nifty:ref: gnéithe nua \<whats-new-1.1\>, go leor socruithe fabht, agus cosán uasghrádaithe éasca ó Django 1.0.

## Athruithe neamh-chomhoiriúnacha ar chúl i 1.1

Tá beartas ag Django de:doc: Cobhsaíocht API \</misc/api-stability\>. Ciallaíonn sé seo gur chóir go leanfadh cód a fhorbraíonn tú i gcoinne Django 1.0 ag obair i gcoinne 1.1 gan athrú. Mar sin féin, déanaimid athruithe neamhchomhoiriúnacha ar chúl uaireanta má tá siad riachtanach chun fabhtanna a réiteach, agus tá dornán athruithe den sórt sin (mion) idir Django 1.0 agus Django 1.1.

Sula n-uasghrádú a dhéanamh go Django 1.1 ba chóir duit seiceáil faoi dhó nach mbíonn tionchar ag na hathruithe seo a leanas ort, agus do chód a uasghrádú má dhéanann siad.

### Athruithe ar ainmneacha srianta

Athraíonn Django 1.1 an modh a úsáidtear chun ainmneacha srianta bunachar sonraí a ghiniúint ionas go mbeidh ainmneacha comhsheasmhach beag beann ar mhéid focal Níl an t-athrú seo ag teacht ar ais do roinnt úsáideoirí.

Má tá ardán 32-giotán á úsáid agat, tá tú as an crúca; ní bhreathnóidh tú aon difríochtaí mar thoradh ar an athrú seo.

Mar sin féin, d'fhéadfadh go mbeadh roinnt fadhbanna\*\* ag úsáideoirí ar ardáin 64-giotán\*\* ag baint úsáide as an ordú bainistíochta athshocraí\` Roimh an athrú seo, ginearfadh ardáin 64-giotán díleá 64-giotán, 16 charachtar san ainm srianta; mar shampla:

```sql
ALTER TABLE myapp_sometable ADD CONSTRAINT object_id_refs_id_5e8f10c132091d1e FOREIGN KEY ...
```

Tar éis an athraithe seo, ginfidh gach ardán, beag beann ar mhéid an fhocail, díleá 32-giotán, 8 charachtar san ainm srianta; mar shampla:

```sql
ALTER TABLE myapp_sometable ADD CONSTRAINT object_id_refs_id_32091d1e FOREIGN KEY ...
```

Mar thoradh ar an athrú seo, ní bheidh tú in ann an t-ordú bainistíochta reset a úsáid ar aon tábla a dhéanann meaisín 64-giotán. Tá sé seo toisc nach n-oireann an t-ainm nua a ghintear leis an ainm a ghintear go stairiúil; mar thoradh air sin, beidh an SQL a thógtar leis an ordú athshocraithe neamhbhailí.

Más gá duit feidhmchlár a cruthaíodh le srianta 64-giotán a athshocrú, beidh ort an sean-srian a scaoileadh de láimh sula n-iarrtar ar athshocraí\`.

### Déantar cásanna tástála a reáchtáil anois in idirbheart

Ritheann Django 1.1 tástálacha taobh istigh d'idirbheart, rud a cheadaíonn feidhmíocht tástála níos fearr (féach [feabhsuithe feidhmíochta tástála](#test-performance-improvements) le haghaidh sonraí).

Tá an t-athrú seo beagán ar gcúl neamh-chomhoiriúnach más gá do thástálacha atá ann cheana iompar idirbheartaíochta a thástáil, má bhíonn siad ag brath ar thoimhdí neamhbhailí faoin timpeallacht tástála, nó má theastaíonn ordú cás tástála sonrach uathu.

Maidir leis na cásanna seo, is féidir :class: ~django.test.transactionTestCase a úsáid ina ionad. Níl anseo ach socrú tapa chun timpeall ar earráidí cásanna tástála a nochtann an cur chuige athiompaithe nua; sna tástálacha fadtéarmacha ba cheart iad a athscríobh chun an cás tástála a cheartú.

### Bainte `SetRemoteAddrfromForWardedFor` middleware

Ar mhaithe le áisiúlacht, chuimsíonn Django 1.0 rang roghnach middleware - `Django.middleware.http.setRemoteAddrFromForwardedFor` \- a nuashonraigh luach `REMOTE_ADDR` bunaithe ar an gceannteideal HTTP `X-Forwarded-For` a shocraíonn go coitianta ag roinnt cumraíochtaí seachfhreastalaí.

Léiríodh nach féidir an meicníocht seo a dhéanamh iontaofa go leor le húsáid ghinearálta, agus go bhféadfadh forbróirí feidhmchláir glacadh leis go bhfuil luach REMOTE\_ADDR “sábháilte” nó iontaofa ar bhealach éigin iontaofa mar fhoinse fíordheimhnithe.

Cé nach saincheist slándála é go díreach, shocraigh muid an middleware seo a bhaint leis an scaoileadh Django 1.1. Cuireadh rang a chur in ionad air nach ndéanann aon rud seachas `DeprecationWarning` a ardú.

Má bhí tú ag brath ar an meán-earraí seo, is é an cosán uasghrádaithe is éasca:

- Scrúdaigh an cód mar a bhí ann sula mbainíodh é \_\_.
- Deimhnigh go n-oibríonn sé i gceart le do sheachfhreastalaí réamhtheachtacha, agus modhnaigh é chun tacú le do sheachfhreastalaí ar leith (más gá).
- Tabhair isteach do leagan modhnaithe de `SetRemoteAdDrFromForWardedFor` mar phíosa meán-earraí i do thionscadal féin.

### Tá ainmneacha na gcomhaid uaslódáilte ar fáil

I Django 1.0, sábháladh comhaid a uaslódáil agus a stóráiltear i samhail:class: FileField ar dhiosca sula sábháladh an tsamhail ar an mbunachar sonraí. Chiallaigh sé seo go raibh ainm iarbhír an chomhaid a shanntar don chomhad ar fáil sula sábháladh é. Mar shampla, bhí sé ar fáil i láimhseálaí comhartha réamhshábhála samhail.

I Django 1.1 sábháltar an comhad mar chuid den tsamhail a shábháil sa bhunachar sonraí, mar sin ní féidir brath ar an ainm comhaid iarbhír a úsáidtear ar dhiosca go dt\* go ndéantar an tsamhail a shábháil.

### Athruithe ar an gcaoi a sábháltar foirmeacha samhail

I Django 1.1, glaonn: class: ~Django.Forms.Models.BaseModelFormSet anois ModelForm.save () .

Tá sé seo comhoiriúnach ar ais má bhí tú ag modhnú `self.initial` i `__init__` foirmset samhail, nó má bhraith tú ar na tréithe inmheánacha `_total_form_count` nó `_initial_form_count` de BaseFormSet. Is modhanna poiblí iad na tréithe sin anois.

### Socraigh iompar éalaithe an scagaire comhoiriúnaí\`

Ní éalaíonn an scagaire: TFilter: join an luach liteartha a chuirtear isteach don chónascaire a thuilleadh.

Tá sé seo comhoiriúnach ar chúl do staid speisialta an teaghrán litriúil ina bhfuil ceann de na cúig charachtar HTML speisialta. Mar sin, má bhí tú ag scríobh `{{foo|join: "&”}}`, caithfidh tú anois `{{foo|join: "&”}}` a scríobh.

Ba fabht an t-iompar roimhe seo agus contrártha leis an méid a doiciméadaíodh agus a raibh súil leis.

### Athreoruithe buana agus an radharc cineálach redirect\_to () \`\`

Cuireann Django 1.1 argóint `permanent` leis an radharc django.views.generic.simple.redirect\_to () . Tá sé seo comhoiriúnach go teicniúil ar ais má bhí tú ag úsáid an radharc redirect\_to\` le eochair teaghrán formáide ar a dtugtar 'buan', rud nach dócha go mór.

## Gnéithe atá díscríofa i 1.1

Tá gné amháin marcáilte mar dhíscríofa i Django 1.1:

- Níor chóir duit Adminsite.root () a úsáid a thuilleadh chun na tuairimí riaracháin sin a chlárú. Is é sin, má tá an líne i do URLConf:

  ```
  (r"^admin/(.*)", admin.site.root),
  ```

  Ba chóir duit é a athrú chun léamh:

  ```
  (r"^admin/", include(admin.site.urls)),
  ```

Ba chóir duit tosú ag úsáid an ghné seo a bhaint as do chód láithreach.

Ardóidh `adminsite.root` `PendingDeprecationWarning` má úsáidtear é i Django 1.1. Tá an rabhadh seo i bhfolach de réir réamhshocrú. I Django 1.2, déanfar an rabhadh seo a uasghrádú go `DeprecationWarning`, a thaispeánfar go hard. Bainfidh Django 1.3 adminsite.root () go hiomlán.

Le haghaidh tuilleadh sonraí faoinár mbeartais agus straitéis díghabhála, féach:doc: /internals/release-process.

## Cad atá nua i Django 1.1

Go leor: ó Django 1.0, rinneamar 1,290 tiomantas cód, shocraigh muid 1,206 fabht, agus chuireamar thart ar 10,000 líne doiciméadaithe leis.

Is iad na príomhghnéithe nua i Django 1.1:

### Feabhsuithe ORM

Cuireadh dhá mhórfheabhsú le mapálaí réad-choibhneasta (ORM) Django: tacaíocht chomhiomlán, agus nathanna fiosrúcháin.

#### Tacaíocht chomhiomlán

Is féidir anois ceisteanna comhiomlána SQL a reáchtáil (ie ```COUNT () ``, `MAX ()```, MIN () , srl.) ó laistigh de ORM Django. Is féidir leat a roghnú torthaí an chomhiomlán a thabhairt ar ais go díreach, nó anótáil a dhéanamh ar na rudaí in a:class: ~django.db.models.query.queryset le torthaí an cheistiúcháin chomhiomlán.

Tá an ghné seo ar fáil mar mhodhanna nua:meth: ~django.db.models.query.queryset.aggregate agus:meth: ~django.db.models.queryset.annotate, agus tá sé clúdaithe go mion in:doc: an doiciméadú comhiomlán\</topics/db/aggregation\> aithe ORM.

#### Nathanna fiosraithe

Is féidir le ceisteanna tagairt a dhéanamh anois do réimse eile ar an gceist agus is féidir leo caidrimh a thrasú chun tagairt a dhéanamh do réimsí ar mhúnlaí \<django.db.models.F\>Cuirtear é seo i bhfeidhm sa réad nua:class: ~django.db.Models.f; le haghaidh sonraí iomlána, lena n-áirítear samplaí, téigh i gcomhairle la:class: F expressions doiciméadach.

### Feabhsuithe samhail

Cuireadh roinnt gnéithe le ciseal samhail Django:

#### Múnlaí “neamh-bhainistithe”

Is féidir leat rialú anois cibé an mbainistíonn Django saolré na dtáblaí bunachar sonraí do mhúnla ag baint úsáide as an rogha samhail: attr: ~Options.managed. Réamhshocraíonn sé seo go `True`, rud a chiallaíonn go gcruthóidh Django na táblaí bunachar sonraí cuí i syncdb\` agus bainfidh sé iad mar chuid den ordú `reset`. Is é sin, bainistíonn Django\* saolré an tábla bunachar sonraí.

Má shocraíonn tú é seo go False, áfach, ní dhéanfar aon tábla bunachar sonraí a chruthú nó a scriosadh go huathoibríoch don tsamhail seo. Tá sé seo úsáideach má léiríonn an tsamhail tábla atá ann cheana nó dearcadh bunachar sonraí a cruthaíodh ar bhealach éigin eile.

Le haghaidh tuilleadh sonraí, féach an doiciméadú don rogha: attr: ~Options.managed.

#### Múnlaí proxy

Is féidir leat anois:ref: seachfsamhlacha \<proxy-models\>\`a chruthú anois: fo-aicmí de mhúnlaí atá ann cheana nach gcuireann ach iompar ar leibhéal Python (seachas leibhéal bunachar sonraí) agus nach léiríonn tábla nua iad. Is é sin, is *proxy* é an tsamhail nua do roinnt samhail bhunúsach, a stóráilíonn na sonraí fíor go léir.

Is féidir na sonraí go léir a fháil sa doiciméadú samhlacha seachfhreastalaí. Tá an ghné seo cosúil ar an dromchla le samhlacha neamhbhainistithe, agus mar sin tá míniú sa cháipéisíocht ar .

#### Réimsí iarchurtha

I roinnt cásanna casta, d'fhéadfadh réimsí a bheith i do mhúnlaí a d'fhéadfadh go leor sonraí a bheith ann (mar shampla, réimsí móra téacs), nó a dteastaíonn próiseáil daor ag teastáil chun iad a thiontú go rudaí Python. Má tá a fhios agat nach dteastaíonn na réimsí áirithe sin uait, is féidir leat a rá anois do Django gan iad a aisghabháil ón mbunachar sonraí.

Déanfaidh tú é seo leis na modhanna nua Queryset: meth: ~django.db.models.query.queryset.defer agus:meth: ~django.db.models.query.queryset.only.

### Feabhsuithe tástála

Rinneadh roinnt feabhsuithe suntasacha ar: doc: creat tástála\</topics/testing/index\> '.

#### Feabhsúcháin feidhmíochta

Ritheann tástálacha atá scríofa ag baint úsáide as Django: Doc: creat tástála go mór \</topics/testing/index\> níos gasta anois (chomh hard le 10 n-uaire níos gasta i go leor cásanna).

Cuireadh i gcrích é seo trí thástálacha bunaithe ar idirbhearta a thabhairt isteach: nuair a úsáidtear: class: django.test.testcase, reáchtálfar do thástálacha anois in idirbheart a rolltar ar ais nuair a bheidh críochnaithe, in ionad tríd an mbunachar sonraí a shruthlú agus a athlíonadh. Mar thoradh air seo tá luas ollmhór ag an gcuid is mó de na cineálacha tástálacha aonaid. Féach an doiciméadú le haghaidh: class: TestCase agus:class: TransactionTestCase le haghaidh tuairisc iomlán, agus roinnt nótaí tábhachtacha maidir le tacaíocht bunachar sonraí.

### Tástáil feabhsuithe cliant

Rinneadh cúpla feabhsúcháin bheaga - ach an-úsáideach - ar an gcliant tástála:

- Is féidir leis an tástála:class: Client anois atreoruithe a leanúint go huathoibríoch leis an argóint `follow` chuig:meth: Client.get agus:meth: Client.post. Déanann sé seo tuairimí tástála a eisíonn atreoruithe níos simplí.
- Tá sé níos éasca anois teacht ar chomhthéacs an teimpléid sa fhreagra a thug an cliant tástála ar ais: ní bheidh tú ach rochtain ar an gcomhthéacs mar ```request.context [key] ``. Tá an seanbhealach, a dhéileálann le ``request.context``` mar liosta comhthéacsanna, ceann amháin do gach teimpléad rindreáilte sa slabhra oidhreachta, ar fáil fós má theastaíonn sé uait.

### Gnéithe nua riaracháin

Cuireann Django 1.1 cúpla gné nua iontach le comhéadan riaracháin Django:

#### Réimsí in-eagarthóireachta ar an liosta athraithe

\<admin-list-editable\>Is féidir leat réimsí a chur in eagar anois ar thuairimí an liosta riaracháin tríd an rogha riaracháin nua:ref: list\_editable admin. Taispeánfar na réimsí seo mar ghuirléidí foirme ar na leathanaigh liosta, agus is féidir iad a chur in eagar agus a shábháil ar an mórchóir.

#### “Gníomhartha” Riaracháin

Is féidir leat a shainiú anois :doc: gníomhaíochtaí admin \</ref/contrib/admin/actions\> ar féidir leo gníomh éigin a dhéanamh do ghrúpa samhlacha ar an mórchóir. Beidh úsáideoirí in ann oibiachtaí a roghnú ar leathanach an liosta athruithe agus ansin na gníomhartha toirtiúla seo a chur i bhfeidhm ar gach réad roghnaithe.

Seolann Django le gníomh riaracháin réamhshainithe amháin chun grúpa rudaí a scriosadh i gcás amháin.

### Próiseáil amharc coinníoll

Tá tacaíocht i bhfad níos fearr ag Django anois do [próiseáil amhairc choinníollach](/ga/6.0/topics/conditional-view-processing/) ag baint úsáide as na ceanntásca caighdeánacha `ETag` agus `Last-Adified` HTTP. Ciallaíonn sé seo gur féidir leat próiseáil amhairc ghearrchiorcaid a phróiseáil go héasca trí choinníollacha nach bhfuil chomh daor sin a thástáil. I gcás go leor tuairimí is féidir go dtiocfadh feabhas mór ar luas agus laghdú ar bandaleithead dá bharr.

### Spásanna ainmneacha URL

Feabhsaíonn Django 1.1: ref: patrúin URL ainmnithe \<naming-url-patterns\>\`trí URL “spais ainmneacha” a thabhairt isteach.

I mbeagán focal, ceadaíonn an ghné seo an grúpa céanna URLanna, ón bhfeidhmchlár céanna, a áireamh i URLConf Django arís agus arís eile, le réamhfhoirmeacha ainmnithe éagsúla (agus a d'fhéadfadh a bheith neadaithe) a úsáidfear agus réiteach droim á dhéanamh. Is é sin le rá, féadfar feidhmchláir in-athúsáidte mar chomhéadan riaracháin Django a chlárú arís agus arís eile gan coinbhleachtaí URL.

\<topics-http-defining-url-namespaces\>Le haghaidh sonraí iomlána, féach:ref: an doiciméadú maidir le spaisí ainmneacha URL a shainiú .

### GeodJango

I Django 1.1, :doc: GeodJango (ie `django.contrib.gis` \</ref/contrib/gis/index\>) tá roinnt gnéithe nua:

- Tacaíocht do [Spatialite](https://www.gaia-gis.it/gaia-sins/) \- bunachar sonraí spásúil do SQLite - mar chúltaca spásúil.
- Comhiomláin gheografacha (`Collect`, Extent\`, `Makeline`, `Union`) agus abairtí `F`.
- Modhanna nua `GeoquerySet`: `baili`, geojson\`, agus `snap_to_grid`.
- Modhanna comhéadan liosta nua le haghaidh rudaí Geosgeoimetry'.

Le haghaidh tuilleadh sonraí, féach an doiciméadú GeodJango.

### Feabhsuithe eile

I measc na ngnéithe agus athruithe nua eile a tugadh isteach ó Django 1.0 tá:

- Tá an: Doc: “Meán-earraí cosanta CSRF” roinnte ina dhá rang -- “CSRFViewMiddleware” seiceálann iarratais atá ag teacht isteach, agus próiseálann CSRFresponsemiddleware\` \</ref/csrf\> freagraí amach. Tá an rang comhcheangailte CSRFmiddleware (a dhéanann an dá cheann) fós le haghaidh comhoiriúnacht ar ais, ach moltar anois na ranganna scoilte a úsáid chun rialú mionghráin a cheadú ar cathain agus cá háit a dtarlaíonn an próiseáil CSRF.
- Oibríonn ```reverse () ``agus cód a úsáideann é (m.sh., clib teimpléad``` {% url%} ``) anois le URLanna i láithreán riaracháin Django, ar choinníoll go bhfuil URLanna riaracháin curtha ar bun trí `include (admin.site.urls)`` (iarratais riaracháin a sheoladh chuig an radharc admin.site.root\` fós ag obair, ach ní chumraítear URLanna sa admin nuair a bheidh” ar an mbealach seo).
- Is féidir leis an bhfeidhm include () i modúil Django URLConf glacadh anois le seicheamh patrúin URL (a ghintear ag \`\`patrúin ()) i dteannta ainmneacha modúl.
- \</topics/forms/index\> \<input type="hidden"\>Tá dhá mhodh breise ag cásanna foirmeacha Django (féach:doc: forbhreathnú ar na foirmeach) anois, ```hidden_fields () ``agus ``feice_fields ()```, a thugann liosta na réimsí i bhfolach - ie, \`\` - agus réimsí infheicthe ar an bhfoirm, faoi seach.
- Glacann an dearcadh cineálach `redirect_to` anois le argóint eochairfhocal breise `permanent`. Más é `` `buan `` True\`, astóidh an dearcadh atreorú buan HTTP (cód stádais 301). Má tá `False`, astóidh an dearcadh atreorú sealadach HTTP (cód stádais 302).
- Cuireadh cineál nua cuardaigh bunachar sonraí - `week_day` -- le haghaidh `DateField` agus `DateTimeField`. Glacann an cineál cuardaigh seo le huimhir idir 1 (Dé Domhnaigh) agus 7 (Dé Sathairn), agus filleann sé rudaí ina n-oireann luach an réimse leis an lá sin den tseachtain. \<field-lookups\>Féach: tagairt: liosta iomlán na gcineálacha cuardaigh le haghaidh sonraí.
- Glacann an chlib `{% le haghaidh %}` i dteanga teimpléid Django anois le clásal roghnach `{ % folamh %}`, a thaispeánfar nuair a iarrtar ar `{% do %}` lúbadh thar fholamh seicheamh. Féach [an liosta de na clibeanna teimpléid ionsuite](/ga/6.0/ref/templates/builtins/) le haghaidh samplaí de seo.
- Glacann an t-ordú bainistíochta: DJadmin: dumpdata le hainmneacha samhail aonair mar argóintí anois, rud a ligeann duit na sonraí a onnmhairiú díreach ó mhúnlaí áirithe.
- Tá scagaire teimpléad nua: tfilter: safeseq ann a oibríonn díreach cosúil:tfilter: sábháilte le haghaidh liostaí, ag marcáil gach mír sa liosta mar shábháilte.
- [Cache backends](/ga/6.0/topics/cache/) now support `incr()` and
  `decr()` commands to increment and decrement the value of a cache key.
  On cache backends that support atomic increment/decrement -- most
  notably, the memcached backend -- these operations will be atomic, and
  quite fast.
- Is féidir le Django anois:doc: fíordheimhniú a tharmligean go héasca chuig an bhfreastalaí gréasán' trí chúltaca fíordheimhnithe nua a thacaíonn leis an athróg comhshaoil caighdeánach \`REMOTE\_USER \</howto/auth-remote-user\> a úsáidtear chun na críche seo.
- Tá feidhm nua:func: django.shortcuts.redirect ann a fhágann go bhfuil sé níos éasca athatreoruithe a eisiúint mar gheall ar réad, ainm amharc, nó URL.
- \<postgresql-notes\>Tacaíonn an cúltaca `postgresql_psycopg2` anois:ref: autocommit PostgreSQL dúchas. Is gné chun cinn é seo, atá sonrach le PostgreSQL, ar féidir leis feidhmchláir áirithe troma léitheoireachta a dhéanamh níos gasta.

## Cad atá romhainn?

Glacfaimid sos gairid, agus ansin tosóidh an obair ar Django 1.2 - gan aon scíth do dhaoine atá tuirseach! Más mian leat cabhrú, bíonn plé ar fhorbairt Django, lena n-áirítear dul chun cinn i dtreo an eisiúint 1.2, ar an liosta seoltaí [django-developers](/ga/6.0/internals/mailing-lists/#django-developers-mailing-list) agus sa chainéal IRC `#django -dev` ar irc.libera.chat\`. Bíodh leisce ort páirt a ghlacadh sna plé!

Cuimsíonn cáipéisíocht ar líne Django leideanna freisin maidir le conas cur le Django:

- [How to contribute to Django](/ga/6.0/internals/contributing/)

Fáiltítear i gcónaí roimh ranníocaíochtaí ar aon leibhéal – cód a fhorbairt, doiciméadú a scríobh nó ticéid a thriaisteáil agus cabhrú le ceartúcháin bheartaithe a thástáil – agus is mór againn i gcónaí iad.

Agus sin an bealach atá sé.
