Rilascio del web framework Django 3.0

Si è svolto rilascio del web framework Django 3.0, scritto in linguaggio Python e destinato allo sviluppo di applicazioni web. Il ramo Django 3.0 è classificato come versione con supporto normale e riceverà aggiornamenti fino ad aprile 2021. Il ramo LTS 2.22 sarà supportato fino ad aprile 2022, mentre il ramo 1.11 fino ad aprile 2020. Il supporto per il ramo 2.1 è stato interrotto. обновления до апреля 2021 года. LTS-ветка 2.22 будет поддерживаться до апреля 2022 года, а ветка 1.11 до апреля 2020 года. Поддержка ветки 2.1 прекращена.

Chiave miglioramenti:

  • Fornito supporto per il funzionamento in modalità asincrona con esecuzione sotto forma di applicazione ASGI. L'interfaccia ASGI (Asynchronous Server Gateway Interface) è stata sviluppata come sostituto del WSGI, mirata a garantire l'interazione tra server, framework e applicazioni che supportano il funzionamento in modalità asincrona. Il supporto per l'esecuzione utilizzando WSGI è mantenuto, e il codice relativo alla modalità asincrona viene incluso solo quando si avvia in ambienti basati su ASGI.

    Per la modalità asincrona è stato implementato un ciclo di gestione eventi (event loop) separato, nel quale non è permesso chiamare codice contrassegnato come "async unsafe". Questo include ad esempio operazioni con il DBMS (ORM), che non possono essere utilizzate in un contesto asincrono (in questo caso verrà generato un errore SynchronousOnlyOperation) e devono essere eseguite in un thread sincrono separato.

  • Sono stati aggiunti tipi enumerativi specializzati TextChoices, IntegerChoices e Choices, che possono utilizzare essere utilizzati per definire campi di testo e interi nel modello, ad esempio, quando è necessario memorizzare nei campi insiemi di etichette leggibili, tradotte in specifiche caratteristiche:

    class YearInSchool(models.TextChoices):
    FRESHMAN = 'FR', _('Freshman')
    SOPHOMORE = 'SO', _('Sophomore')
    JUNIOR = 'JR', _('Junior')
    SENIOR = 'SR', _('Senior')
    GRADUATE = 'GR', _('Graduate')

  • È stata aggiunta la possibilità di specificare espressioni che producono BooleanField, direttamente nei filtri del QuerySet senza la necessità di annotarli preventivamente, prima di applicarli per filtrare le annotazioni.
  • È stato fornito supporto ufficiale per i DBMS MariaDB 10.1 e versioni più recenti.
  • Per PostgreSQL è stata realizzata la classe ExclusionConstraint per utilizzare restrizioni basate su espressioni. EXCLUDE;
  • Il supporto per Python 3.5 è terminato.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster