Django 4.1 添加了異步處理程序


Django 4.1 是主要基於 Python 的 Web 框架的新版本,增加了異步處理程序和 ORM 接口等功能,但也進行了一些向後不兼容的更改。

8 月 3 日發布,Django 4.1 可以從 Django項目網站. 新版本介紹 異步處理程序 對於基於類的視圖; 視圖子類現在可以定義異步 HTTP 方法處理程序,根據 發行說明.

對於異步對象關係映射, QuerySet 現在為所有數據訪問操作提供了一個異步接口。 新接口允許開發人員編寫異步代碼,而無需編寫 ORM 操作 sync_to_async(). 在這個階段,底層數據庫操作保持同步。

Django 4.1 支持 Python 3.8、Python 3.9 和 Python 3.10,但僅支持每個系列的最新版本。 同樣在 Django 4.1 中:

  • Check, unique, 和 exclusion 在定義的約束 Meta.constraints 現在在模型驗證期間檢查選項。
  • 新的 <div>提供基於表單的模板,以幫助擁有屏幕閱讀器和其他輔助技術的用戶。
  • 一個 CSRF_COOKIE_MASKED 過渡設置允許開發人員指定是否屏蔽 CSRF (Cross Site Request Forgery) cookie。
  • 一個 SECRET_KEY_FALLBACKS 設置允許為密鑰驗證提供值列表。
  • 對於模板,HTML <script> 元素的 id 包裝時不再需要屬性 json_script 模板。
  • 為了測試, DiscoverRunner 現在支持在 Windows、macOS 和任何其他默認的系統上並行運行測試 multiprocessing 啟動方法是 spawn.

進行了許多向後不兼容的更改,包括一些影響數據庫後端 API 的更改。 發行說明 詳細說明具體的變化,例如 BaseDatabaseFeatures.has_case_insensitive_like 從被改變 True False 反映大多數數據庫的行為。

對 PostgreSQL 10 的上游支持將於 11 月結束。 Django 4.1 支持 PostgreSQL 11 及更高版本。 此外,由於對 MariaDB 10.2 的支持已於 5 月結束,Django 4.1 支持 MariaDB 10.3 及更高版本。

版權所有 © 2022 IDG Communications, Inc.

發佈留言