Nótaí scaoilte Django 4.2Link to this heading

3 Aibreán, 2023

Fáilte go dtí Django 4.2!

Clúdaíonn na nótaí scaoilte seo na:ref: gnéithe nua <whats-new-4.2>, chomh maith le roinnt athruithe: ref: athruithe neamh-chomhoiriúnacha ar chúl<backwards-incompatible-4.2> a mbeidh tú ag iarraidh a bheith ar an eolas fúthu agus tú ag uasghrádú ó Django 4.1 nó níos luaithe. <deprecated-features-4.2>We've:ref: `thosaigh an próiseas díghabhála do roinnt gnéithe `.

Féach an treoir:doc: /howto/upgrade-leagan má tá tionscadal atá ann cheana á nuashonrú agat.

<Long-term support release>Ainmnítear Django 4.2 mar a: téarma: `scaoileadh tacaíochta fadtéarmach `. Gheobhaidh sé nuashonruithe slándála ar feadh trí bliana ar a laghad tar éis a scaoilte Tiocfaidh deireadh le tacaíocht don LTS roimhe seo, Django 3.2, i mí Aibreáin 2024.

Comhoiriúnacht PythonLink to this heading

Tacaíonn Django 4.2 le Python 3.8, 3.9, 3.10, 3.11, agus 3.12 (amhail 4.2.8). Molaimid** go hard** agus ní thacaímid go hoifigiúil ach leis an scaoileadh is déanaí de gach sraith.

Cad atá nua i Django 4.2Link to this heading

Tacaíocht Psycopg 3Link to this heading

Tacaíonn Django anois le psycopg leagan 3.1.8 nó níos airde. <DATABASE-ENGINE>Chun do chód a nuashonrú, suiteáil an leabharlan:pypi: psycopg `, <psycopg>ní gá duit an: setting: `ENGINE a athrú mar thacaíonn django.db.backends.postgresql leis an dá leabharlann.

Is dóigh go ndéanfar tacaíocht do psycopg2 a dhíchur agus a bhaint ag pointe éigin sa todhchaí.

Bí ar an eolas go gcuireann psycopg` 3 roinnt athruithe briseacha isteach thar psycopg2`. Mar thoradh air sin, b'fhéidir go mbeidh ort roinnt athruithe a dhéanamh chun cuntas a thabhairt ar difríochtaí ó psycopg2.

Tuairimí ar cholúin agus táblaíLink to this heading

<django.db.models.Options.db_table_comment>Ceadaíonn na roghanna nua:attr: Field.db_Comment <django.db.models.Field.db_comment>`agus:attr: `Meta.db_Table_Comment tuairimí a chruthú ar cholúin agus táblaí, faoi seach. Mar shampla:

Code
from django.db import models


class Question(models.Model):
    text = models.TextField(db_comment="Poll question")
    pub_date = models.DateTimeField(
        db_comment="Date and time when the question was published",
    )

    class Meta:
        db_table_comment = "Poll questions"


class Answer(models.Model):
    question = models.ForeignKey(
        Question,
        on_delete=models.CASCADE,
        db_comment="Reference to a question",
    )
    answer = models.TextField(db_comment="Question answer")

    class Meta:
        db_table_comment = "Question answers"

<django.db.models.Options.db_table_comment>Chomh maith leis sin, ceadaíonn an oibríocht nua:class: ~django.db.migrations.Operations.AlterModelTableComment `tráchtanna tábla a athrú atá sainmhínithe in:attr: `Meta.DB_Table_Comment.

Maolú don ionsaí BREACHLink to this heading

GZipMiddleware now includes a mitigation for the BREACH attack. It will add up to 100 random bytes to gzip responses to make BREACH attacks harder. Read more about the mitigation technique in the Heal The Breach (HTB) paper.

Stóráil comhad i gcuimhneLink to this heading

Soláthraíonn an rang nua:class: django.core.files.storage.inmemoryStorage stóráil neamh-leanúnach atá úsáideach chun tástálacha a bhrostú trí rochtain diosca a sheachaint.

Stóráil comhaid saincheapthaLink to this heading

Ligeann an socrú nua:setting: STORAGES cúltaca stórála comhad saincheaptha iolracha a chumrú. Rialaíonn sé innill stórála freisin chun bainistiú: doc: comhad (an eochair ``"réamhshocraithe” ``) agus:doc: comhad stataich (an ``"staticfiles</topics/files> "`eochair </ref/contrib/staticfiles>).

Tá na sean-socruithe DEFAULT_FILE_STORAGE agus STATICFILES_STORAGE a dhíscríobh amhail an eisiúint seo.

MionghnéitheLink to this heading

django.contrib.adminLink to this heading

  • Is féidir téama dath éadrom nó dorcha an riaracháin a thosc anois sa Chomhéadan, chomh maith le bheith socraithe chun socrú an chórais a leanúint.

  • Is fearr le cruach cló an riaracháin clónna UI córais anois agus ní theastaíonn clónna a íoslódáil a thuilleadh Ina theannta sin, tá athróga CSS ar fáil chun na teaghlaigh cló réamhshocraithe a shárú níos éasca.

  • Tá roinnt bloic agus crúcaí scripteála breise anois ag an teimpléad:source: admin/delete_confirmation.html chun saincheapadh a éasc<django/contrib/admin/templates/admin/delete_confirmation.html> ú.

  • Tá na roghanna roghnaithe de:attr: ~django.contrib.admin.modeladmin.filter_horizontal agus:attr: ~django.contrib.admin.modeladmin.filter_vertical giuirléidí inscagtha anois.

  • Tá bloc nua nav-breadcrumbs sa teimpléad admin/base.html anois ina bhfuil an sainchomhartha nascleanúna agus an bloc breadcrumbs.

  • ModelAdmin.list_editable now uses atomic transactions when making edits.

  • jQuery is upgraded from version 3.6.0 to 3.6.4.

django.contrib.authLink to this heading

  • Méadaítear an líon athraithe réamhshocraithe don hasher pasfhocal PBKDF2 ó 390,000 go 600,000.

  • UserCreationForm now saves many-to-many form fields for a custom user model.

  • Is é an nua:class: ~django.contrib.auth.forms.baseUserCreationForm an bunaicme a mholtar anois chun an fhoirm chruthaithe úsáideora a shaincheapadh.

django.contrib.gisLink to this heading

  • Aisíonn an:doc: GeoJSON serializer an eochair `id ``anois le haghaidh gnéithe sraithe</ref/contrib/gis/serializers> acha, a réamhshocraíonn ar phríomh-eochair na rudaí.

  • Tacaíonn an rang:class: ~django.contrib.gis.gdal.gdalraster anois:class: Pathlib.path.

  • Tacaíonn an rang:class: ~django.contrib.gis.geoip2.geoip2 anois le comhaid .mmdb a íoslódáil ó DB-IP.

  • Ní chuimsíonn giuirléid teimpléad OpenLayers CSS inlíne a thuilleadh (a bhaineann an iar-bhloc map_css freisin) chun polasaí slándála Ábhar dian a chomhlíonadh níos fearr.

  • OpenLayersWidget is now based on OpenLayers 7.2.2 (previously 4.6.5).

  • <django.contrib.gis.db.models.functions.IsEmpty>Ligeann an léiriú nua:lookup: isempty agus: class: `isEmpty () `geoiméadraí folmha a scagadh ar PostGIS.

  • Ceadaíonn na feidh <django.contrib.gis.db.models.functions.FromWKB><django.contrib.gis.db.models.functions.FromWKT>meanna nua:aicme: fromWKB () `agus:aicme: `fromWKT () geoiméadrachtaí a chruthú ó ionadaíochtaí dénártha aitheanta (WKB) agus téacs aitheanta (WKT).

django.contrib.postgresLink to this heading

  • <django.contrib.postgres.search.TrigramStrictWordSimilarity><django.contrib.postgres.search.TrigramStrictWordDistance>Ceadaíonn an cuardach nua:lookup: trigram_strict_word_similar, agus an:class: trigramstrictWordSimilarity () `agus:class: `trigramstrictWordDistance () cosúlacht focal dian trigram a úsáid.

  • Tacaíonn an cuardach: lookup: arrayfield.overlap anois le QuerySet.values () ``agus ``values_list () mar thaobh na láimhe deise.

django.contrib.sitemapsLink to this heading

  • Ligeann an modh nua:meth: .SiteMap.Get_Languages_for_Item liosta na dteangacha a bhfuil an mír ar taispeáint dóibh a shaincheapadh.

django.contrib.staticfilesLink to this heading

  • ManifestStaticFilesStorage now has experimental support for replacing paths to JavaScript modules in import and export statements with their hashed counterparts. If you want to try it, subclass ManifestStaticFilesStorage and set the support_js_module_import_aggregation attribute to True.

  • Soláthraíonn an tréith nua:attr: .manifestStaticFilesStorage.manifest_hash hash thar gach comhad sa manifest agus athraíonn sé aon uair a athraíonn ceann de na comhaid.

Cúltaca bunachar sonraíLink to this heading

  • <database-role>Tacaítear anois leis an rogha nua "assume_role" in:setting: OPTIONS ar PostgreSQL chun ligean an ról seisiúin `a shonrú.

  • <database-server-side-parameters-binding>Tacaítear anois leis an rogha nua "server_side_binding" in:setting: OPTIONS ar PostgreSQL le psycopg 3.1.8+ chun cead a úsáid:ref: cúrsaí ceangailteacha taobh freastalaí.

Tuairisc EarráideLink to this heading

  • <657>Taispeánann an leathanach dífhabhtaithe anois:pep: nótaí eisceachta `agus <678>:pep: `suíomhanna earráide mion-ghráinne ar Python 3.11+.

  • Déileáiltear le fianáin seisiúin mar dhintiúir anois agus mar sin folaítear iad agus cuirtear réaltaí (**********) ina n-ionad i dtuairiscí earráide.

FoirmeachaLink to this heading

  • ModelForm now accepts the new Meta option formfield_callback to customize form fields.

  • modelform_factory() now respects the formfield_callback attribute of the form’s Meta.

IdirnáisiúnúLink to this heading

  • Cuireadh tacaíocht agus aistriúcháin leis an teanga Cúirdis Lárnach (Sorani).

LogáilLink to this heading

  • Logálann an logghair:ref: django-db-logger fiosruithe bainistíochta idirbheart anois (BEGIN, COMMIT`, agus ROLLBACK) ag an leibhéal ``DEBUG`.

Orduithe BainistíochtaLink to this heading

  • makemessages command now supports locales with private sub-tags such as nl_NL-x-informal.

  • Comhcheanglaíonn an rogha nua:option: makemigrations --update athruithe samhail san imirce is déanaí agus déanann sé na hoibríochtaí mar thoradh air a bharrfheabhsú.

ImirceLink to this heading

  • Tacaíonn imirce anois le sraitheadh rudaí Enum.flag.

SamhlaLink to this heading

  • Tacaíonn ``QuerySet` go forleathan anois le scagadh i gcoinne: ref: `feidhmeanna fuinneog seachas cuardaigh scagaire disjunctive i gcoinne feidhmeanna fuinneoige agus comhiomlánú á dhéanamh.

  • : meth: Tacaíonn ~.querySet.Prefetch_Related anois:class: ~django.db.models.prefetch rudaí le ceisteanna slisnithe.

  • Registering lookups on Field instances is now supported.

  • Ligeann an argóint nua robust le haghaidh: func: `~django.db.transaction.on_commit 'gníomhartha a dhéanamh ar féidir leo teip a dhéanamh tar éis idirbheart bunachar sonraí a dhéanamh go rathúil.

  • Léiríonn an abairt nua:class: KT () <django.db.models.fields.json.KT>`luach téacs eochair, innéacs nó athrú cosáin de:class: `~django.db.models.jsonField.

  • Now now supports microsecond precision on MySQL and millisecond precision on SQLite.

  • F() expressions that output BooleanField can now be negated using ~F() (inversion operator).

  • Soláthraíonn Model ``leaganacha asincrónacha anois de roinnt modhanna a úsáideann an bunachar sonraí, ag baint úsáide as réimír ``a: :meth: ~.model.Adelete, :meth: ~.model.arefresh_from_db, agus:meth: ~.model.asave.

  • Soláthraíonn bainisteoirí gaolmhara leaganacha asincrónacha de mhodhanna anois a athraíonn sraith rudaí gaolmhara, ag baint úsáide as réimír a: :meth: ~.relatedManager.aAdd, :meth: ~.relatedManager.aRemove, agus:meth: ~.relatedManager.aset.

  • CharField.max_length is no longer required to be set on PostgreSQL, which supports unlimited VARCHAR columns.

Iarrataí agus FreagraíLink to this heading

TástálachaLink to this heading

  • Formálaíonn an rogha: rogha test --debug-sql fiosruithe SQL anois le sqlparse.

  • Tacaíonn ranga:Class: ~django.test.requestFactory, :class: ~django.test.asyncRequestFactory, :class: ~django.test.client, agus:class: ~django.test.asyncClient anois leis an paraiméadar headers, a ghlacann le foclóir ainmneacha agus luachanna ceanntásc. Ligeann sé seo comhréir níos nádúrtha chun ceanntásca a dhearbhú.

    Python
    # Before:
    self.client.get("/home/", HTTP_ACCEPT_LANGUAGE="fr")
    await self.async_client.get("/home/", ACCEPT_LANGUAGE="fr")
    
    # After:
    self.client.get("/home/", headers={"accept-language": "fr"})
    await self.async_client.get("/home/", headers={"accept-language": "fr"})
    

FóntaisLink to this heading

  • Ligeann an paraiméadar nua encoder le haghaidh: meth: django.utils.html.json_script aicme ionchódóra JSON a shaincheapadh.

  • Stíleann an cóip phríobháideach inmheánach de urllib.parse.urlsplit () ``anois `'r', `n ', agus`'t'`` (féach: cve: 2022-0391 agus:bpo: 43882). Tá sé seo chun tionscadail a d'fhéadfadh a bheith ag úsáid mícheart an fheidhm inmheánach ``url_has_allowed_host_and_scheme () `a chosaint, in ionad ceann de na feidhmeanna doiciméadaithe a úsáid chun atreoruithe URL a láimhseáil. Níor chuir tionchar ar fheidhmeanna Django.

  • Tugann an fheidhm nua:func: django.utils.http.content_disposition_header luach ceanntásc HTTP Content-Disposition mar a shonraítear ar:rfc: 6266.

BailíochtóiríLink to this heading

  • Déantar an liosta de na pasfhocail choitianta a úsáideann CommonPasswordValidator a nuashonrú go dtí an leagan is déanaí.

Athruithe neamh-chomhoiriúnacha ar ais i 4.2Link to this heading

API cúltaca bunachar sonraíLink to this heading

Déanann an rannán seo cur síos ar athruithe a d’fhéadfadh a bheith ag teastáil ar dhroim bhunachar sonraí tríú páirtí.

  • Baintear databaseFeatures.allows_group_by_pk ``mar níor fhan ach freastal ar síneadh MySQL a cuireadh in ionad trí bhrath spleáchais fheidhmiúil ceart i MySQL 5.7.15. Tabhair faoi deara go dtacaítear le ``DatabaseFeatures.allows_group_by_selected_pks fós agus ba chóir é a chumasú má thacaíonn do chúlcheann le brath spleáchais fheidhmiúil i gclásail GROUP BY mar a shonraítear leis an gcaighdeán SQL:1999`.

  • inspectdb now uses display_size from DatabaseIntrospection.get_table_description() rather than internal_size for CharField.

Tacaíocht titim do MariaDB 10.3Link to this heading

Críochnaíonn tacaíocht suas srutha do MariaDB 10.3 i mí na Bealtaine 2023. Tacaíonn Django 4.2 le MariaDB 10.4 agus níos airde.

Tacaíocht titim do MySQL 5.7Link to this heading

Críochnaíonn tacaíocht upstream do MySQL 5.7 i mí Dheireadh Fómhair 2023. Tacaíonn Django 4.2 le MySQL 8 agus níos airde.

Tacaíocht titim do PostgreSQL 11Link to this heading

Críochnaíonn tacaíocht suas srutha do PostgreSQL 11 i mí na Samhna 2023. Tacaíonn Django 4.2 le PostgreSQL 12 agus níos airde.

B'fhéidir go mbeadh gá anois ag socrú update_fields i Model.save () `Link to this heading

<django.db.models.Model.save>D'fhonn colúin neamhriachtanacha a nuashonrú a sheachaint, téann :meth: .queryset.update_or_create anois update_fields chuig na glaonna:: Model.save () `. Mar thoradh air sin, ba chóir aon réimsí a mhodhnaítear sna modhanna saincheaptha ``save () ``a chur leis an argóint eochairfhocal ``update_fields` sula nglactar ar super (). Féach: Ref: overriding-model-methods le haghaidh tuilleadh sonraí.

Tacaíocht titim do chomhiomlánú amh ar MySQLLink to this heading

Ceadaíonn MySQL 8+ spleáchas feidhmiúla ar cholúin ``GROUP BY ``, mar sin baintear an réamh-Django 4.2 maidir le grúpáil de réir eochracha príomhúil an phríomh-thábla. Mar thoradh air sin, ní thacaítear le comhiomlánú ``RawSQL () a úsáid a thuilleadh ar MySQL mar níl aon bhealach ann chun a chinneadh an bhfuil comhiomlánú den sórt sin de dhíth nó bailí sa chlásal ``GROUP BY. Úsáid: ref: `feidhmeanna comhiomlánaithe' ina ionad.

IlghnéitheachLink to this heading

  • Baintear an fheidhm ``django.http.multipartparser.parse_header () `neamhdhoiciméadaithe. Úsáid ``django.utils.http.parse_header_parameters () ``ina ionad.

  • {% blocktranslate asvar %} result is now marked as safe for (HTML) output purposes.

  • Baintear an tréith HTML ``autofocus` sa bhosca cuardaigh riaracháin mar d'fhéadfadh sé a bheith mearbhall do léitheoirí scáileáin.

  • Ní chruthaíonn an rogha:option: makemigrations --check comhaid imirce in easnamh a thuilleadh.

  • Baintear an argóint alias do:meth: .expression.get_group_by_cols.

  • Méadaítear an leagan íosta tacaithe de sqlparse` ó 0.2.2 go 0.3.1.

  • Baintear an paraiméadar diúlt neamhdhoiciméadaithe den léir:class: ~django.db.Models.Exists.

  • Baintear argóint is_resum den mhodh ``Query.add_annotation () ``neamhdhoiciméadaithe.

  • Méadaítear an leagan íosta tacaithe de SQLite ó 3.9.0 go 3.21.0.

  • Méadaítear an leagan íosta tacaithe de asgiref` ó 3.5.2 go 3.6.0.

  • UserCreationForm now rejects usernames that differ only in case. If you need the previous behavior, use BaseUserCreationForm instead.

  • Méadaítear an leagan íosta tacaithe de mysqlclient` ó 1.4.0 go 1.4.3.

  • Méadaítear an leagan íosta tacaithe de argon2-cffi ó 19.1.0 go 19.2.0.

  • Méadaítear an leagan íosta tacaithe de Pillow ó 6.2.0 go 6.2.1.

  • Méadaítear an leagan íosta tacaithe de jinja2` ó 2.9.2 go 2.11.0.

  • Méadaítear an leagan íosta tacaithe de: pypi: `redis-py <redis>`ó 3.0.0 go 3.4.0.

  • Ní mór réad cosúil le comhad a sholáthar do wsgi.input` rudaí WSGIRequest` de láimh. Roimhe seo, bhí Django níos saoire ná an t-iompar a bhfuiltear ag súil leis mar a shonraíonn sonraíocht WSGI.

  • Baintear tacaíocht do PROJ` <5.

  • <ssl.SSLContext.check_hostname><ssl.SSLContext.verify_mode>:class: ~django.core.mail.backends.smtp.emailBackend fíoraíonn anois a:py:attr: hostname `agus:py:attr: `teastais. Más gá duit an t-iompar roimhe seo nach bhfuil chomh sriantach agus nach mholtar, fo-aicme emailBackend agus athsháraigh an maoin ssl_context.

Gnéithe atá díscríofa i 4.2Link to this heading

Tá rogha index_together ``díluasaithe i bhfabhar ``indexesLink to this heading

Tá an rogha Meta.index_Together` a dhíchur i bhfabhar an roghna:attr: ~Django.db.Models.Options.Indexes.

Ba chóir an imirce atá ann cheana féin a láimhseáil mar imirce. Mar shampla:

Code
class Author(models.Model):
    rank = models.IntegerField()
    name = models.CharField(max_length=30)

    class Meta:
        index_together = [["rank", "name"]]

Ba chóir go mbeadh:

Code
class Author(models.Model):
    rank = models.IntegerField()
    name = models.CharField(max_length=30)

    class Meta:
        indexes = [models.Index(fields=["rank", "name"])]

Ag rith an t-ordú:djadmin: makemigrations ginfidh imirce ina bhfuil oibríocht a:class: ~django.db.migrations.operations.renameIndex a athainmneoidh an t-innéacs atá ann cheana. Ansin, smaoinigh ar imirce a scrúdú chun `index_together ``a bhaint as imirce stairiúla.

Ní thugtar tacaíocht oifigiúil anois leis an oibríocht imirce AlterIndexTogether ach amháin do chomhaid imirce réamh-Django 4.2. Ar chúiseanna comhoiriúnachta ar chúl, tá sé fós mar chuid den API poiblí, agus níl aon phlean ann é a dhíchur nó a bhaint, ach níor cheart é a úsáid le haghaidh imirce nua. Úsáid:aicme: ~django.db.migrations.operations.addIndex agus:class: ~django.db.migrations.operations.removeIndex oibríochtaí ina ionad.

Tá litríochtaí teaghrán ionchódaithe JSON a chur chuig JSONField míluasaitheLink to this heading

“JSONField” agus a chuardaigh agus comhiomlánaithe gaolmhara a úsáideadh chun litríochtaí teaghrán ionchódaithe JSON a chur ar aghaidh a bhí ina chúis le débhríocht ar an raibh litríochtaí teaghráin ionchódaithe cheana féin ó pheirspictíocht cúltaca bunachar sonraí.

Le linn na tréimhse díghabhála déanfar iarracht litríochtaí teaghrán a dhíchódú JSON agus astófar rabhadh maidir le rath a thugann le fios foirmeacha neamh-ionchódaithe a rith ina ionad sin.

Cód a d'úsáid chun litríochtaí teaghrán ionchódaithe JSON a rith:

Code
Document.objects.bulk_create(
    Document(data=Value("null")),
    Document(data=Value("[]")),
    Document(data=Value('"foo-bar"')),
)
Document.objects.annotate(
    JSONBAgg("field", default=Value("[]")),
)

Ba chóir go mbeadh:

Code
Document.objects.bulk_create(
    Document(data=Value(None, JSONField())),
    Document(data=[]),
    Document(data="foo-bar"),
)
Document.objects.annotate(
    JSONBAgg("field", default=[]),
)

Ó Django 5.1+ déanfar litríochtaí teaghrán a léirmhíniú go hinchinneach mar litríochtaí teaghrán JSON.

IlghnéitheachLink to this heading

  • Tá an modh ``BaseUserManager.Make_Random_Password () ``díluachtaithe. Féach oidis agus dea-chleachtais `_ chun modúl Python: < https://docs.python.org/3/library/secrets.html#recipes-and-best-practices> py:MOD: `rúda a úsáid chun pasfhocail a ghiniúint.

  • <if>Tá an scagaire teimpléad long_is ``a dhíchur i bhfabhar: tfilter: `leng` agus an oibreoir ``== laistigh de chlib: ttag: {% if%}. Mar shampla

    Django template
    {% if value|length == 4 %}{% endif %}
    {% if value|length == 4 %}True{% else %}False{% endif %}
    

    in ionad:

    Django template
    {% if value|length_is:4 %}{% endif %}
    {{ value|length_is:4 }}
    
  • Django.Contrib.Auth.Hashers.Sha1PasswordHasher, Django.Contrib.Auth.Hashers.UnsaltedSha1PasswordHasher`, agus Django.Contrib.Auth.Hashers.UnsaltedMd5PasswordHasher.

  • django.contrib.postgres.fields.cicharfield luasghabháilte i bhfabhar ``CharField (db_collation="...”) ``le comparáid neamh-chinntitheach cás-neamh-íogair.

  • django.contrib.postgres.fields.Ciemailfield scoite i bhfabhar ``EmailField (db_collation="...”) ``le comhlánú neamhchinntiúil cás-neamh-íogair.

  • django.contrib.postgres.fields.citextField scoite i bhfabhar ``TextField (db_collation="...”) ``le comhlánú neamhchinntiúil cás-neamh-íogair.

  • Tá mixin django.contrib.postgres.fields.citext measctha.

  • Tá na tréithe map_height agus map_width de BasegeometryWidget` a dhíchur, bain úsáid as CSS chun giuirléidí léarscáileála a mhéadú ina ionad sin.

  • SimpleTestCase.AssertFormSetError () ``díluaite i bhfabhar ``AssertFormSetError ().

  • ``TransactionTestCase.assertQuerySetEqual () díluaite i bhfabhar ``AssertQuerySetEqual () `.

  • Tá argóintí seasaimh a chur chuig Signer agus TimeStampSigner i bhfabhar argóintí eochairfhocal amháin.

  • Tá an socrú DEFAULT_FILE_STORAGE a dhíchur i bhfabhar ``STORAGES ["réamhshocraithe"] ``.

  • Tá an socrú STATICFILES_STORAGE a dhíchur i bhfabhar ``STORAGES ["staticfiles"] ``.

  • Tá an fheidhm ``django.core.files.storage.get_storage_class () ``díluaite.