rilascio del framework web , scritto in Python e destinato allo sviluppo di applicazioni web. La versione Django 3.0 è classificata come rilascio con supporto standard e sarà aggiornata 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.
Le chiave :
- supporto per il funzionamento in modalità asincrona con esecuzione come applicazione ASGI. L'interfaccia (Asynchronous Server Gateway Interface) è stata sviluppata come sostituzione del WSGI, mirata a garantire l'interazione tra server, framework e applicazioni che supportano l'esecuzione in modalità asincrona. È mantenuto il supporto per l'avvio utilizzando WSGI, mentre il codice correlato alla modalità asincrona viene incluso solo quando si avvia in ambienti basati su ASGI.
Per la modalità asincrona è stato implementato un ciclo di elaborazione eventi separato (event loop), nel quale non è consentito richiamare codice contrassegnato come «async unsafe». A questo codice appartengono, ad esempio, le operazioni con il database (ORM), che non possono essere utilizzate in un contesto asincrono (in tal caso verrà restituito l'errore SynchronousOnlyOperation) e devono essere spostate in un thread sincrono separato.
- Sono stati aggiunti tipi enumerati specializzati TextChoices, IntegerChoices e Choices, che possono essere utilizzati per definire campi testuali e interi nel modello, ad esempio, quando è necessario memorizzare nei campi set di etichette leggibili, tradotte in specifici attributi:
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 restituiscono , direttamente nei filtri QuerySet senza bisogno di annotarli in anticipo, prima dell'applicazione per la filtrazione delle annotazioni.
- È stato garantito il supporto ufficiale per i database MariaDB 10.1 e versioni più recenti.
- Per PostgreSQL è stato implementato il classe per utilizzare vincoli basati su espressioni ;
- Il supporto per Python 3.5 è stato interrotto.
Fonte: opennet.ru
