Django 3.0 -verkkokehyksen julkaisu

tapahtui web-kehyksen julkaisu Django 3.0, kirjoitettu Pythonilla ja suunniteltu verkkosovellusten kehittämiseen. Django 3.0 -haara on luokiteltu tavalliseksi tukijulkaisuksi ja tulee saada päivitykset huhtikuuhun 2021 asti. LTS-haara 2.22 on tuettu huhtikuuhun 2022 asti ja haara 1.11 huhtikuuhun 2020 asti. Haara 2.1:n tuki on lopetettu.

Avain parannuksia:

  • Edellyttäen tuki työskentelylle asynkronisessa tilassa suorittamalla ASGI-sovelluksen muodossa. Ohjelmistoliittymä ASGI (Asynchronous Server Gateway Interface) on suunniteltu korvaamaan WSGI, ja sen tarkoituksena on helpottaa asynkronista toimintaa tukevien palvelimien, kehysten ja sovellusten vuorovaikutusta. Tuki WSGI:n käyttämiselle säilyy, ja asynciin liittyvä koodi sisältyy vain käytettäessä ASGI-pohjaisissa ympäristöissä.

    Asynkronisessa tilassa on toteutettu erillinen tapahtumasilmukka, jossa "async unsafe" -merkitty kutsukoodi ei ole sallittu. Tämä koodi sisältää esimerkiksi operaatioita DBMS:n (ORM) kanssa, jota ei voida käyttää asynkronisessa kontekstissa (tässä tapauksessa näytetään SynchronousOnlyOperation-virhe), ja ne tulee sijoittaa erilliseen synkroniseen säiettä.

  • Lisätty erikoistuneet enum-tyypit TextChoices, IntegerChoices ja Choices, joita voidaan käyttää määrittelemään malliin teksti- ja kokonaislukukenttiä, esimerkiksi jos kenttiin on tarpeen tallentaa luettavia tarroja, jotka on käännetty tietyiksi ominaisuuksiksi:

    luokka YearInSchool(mallit.TextChoices):
    FRESHMAN = 'FR', _('Freshman')
    SOPHOMORE = 'SO', _('Sophomore')
    JUNIOR = 'JR', _('Junior')
    SENIOR = 'SR', _('Senior')
    GRDUATE = 'GR', _('valmistunut')

  • Lisätty mahdollisuus määrittää tulostetut lausekkeet BooleanField,suoraan QuerySet-suodattimissa ilman huomautuksia, ennen kuin käytät niitä merkintöjen suodattamiseen.
  • Virallinen tuki MariaDB 10.1:lle ja uudemmille julkaisuille tarjotaan.
  • Luokka on toteutettu PostgreSQL:lle Poissulkemisrajoitus käyttää lausekkeisiin perustuvia rajoituksia POISTA;
  • Python 3.5:n tuki on lopetettu.

Lähde: opennet.ru

Lisää kommentti