Django 2 1 版本已經來襲

2021-09-11 15:07:08 字數 1029 閱讀 7982

乙個備受關注、很多人都在使用的軟體,軟體開發團隊會定期發布新版本。其主要目的是修復之前一些 bug 以及新增一些新特性。django 作為主流的 python web 開發框架,當然也不例外。在幾天前,即 8 月 1 號,django 官方團隊發布 django 2.1 版本。

新版本發布,我們可以不用急於更新替換,但要關注新版本的發布內容。我看了下官方的發布公告,總結幾個重要的點。

1 python 版本支援

django 2.1 將不再支援 python 3.4,最低要求 python 版本是 3.5。這也意味著 django 2.0 是最後乙個支援 python 3.4 的版本。

2 模型新增檢視許可權

這個功能,很多開發者都期待了很久。盼星星盼月亮,終於盼來了。

在以前的版本中,模型(model)只有「增刪改」許可權。新版本增加檢視(view)許可權。這也意味著在 model 的 meta 配置選項中,default_permissions屬性預設值變為('add', 'change', 'delete', 'view')

此外,官方團隊考慮到向前相容性。在舊版本中,如果使用者取得修改(change)許可權。更新到新版本,使用者會自動獲得檢視(view)許可權。

view 許可權同樣也適用於 admin,它可以給使用者指定唯讀許可權。這裡是通過modeladmin.has_view_permission(request, obj=none)來設定。如果希望乙個 obj 被設定成唯讀屬性,那麼要返回 true。

3 模型

新版本的 model 類也一些特性,我也列舉出比較重要的點。

4 表單

表單(forms)中的 imagefield 元件新增accept="image/*"屬性。

5 快取

基於記憶體快取(local-memory cache backend)採用**最近最少使用(lru)**篩選策略,以替換之前隨機數的策略。

6 資料庫版本支援

Django2 1 內建分頁器

官方文件參考 python提供了內建分頁類,裡面封裝了一些屬性和方法,大大簡化了我們自定義的時間和精力,這個類位於django core paginator.py。from django.core.paginator import paginator from django.core.paginat...

Django 2 1入門教程(六)

在polls目錄下建立static目錄,django將自動從此目錄下查詢靜態檔案。建立polls static polls style.css如下 li a在polls templates polls index.html中新增如下 其中的模板標籤生成靜態檔案的絕對路徑。此時訪問http local...

django 2 1官方文件翻譯 模板(進行中)

django的官方文件在transifex上翻譯,本來想貢獻一下,結果發現那個介面實在是受不了。自己翻吧 模板作為乙個web框架,django需要一種動態生成html的便捷方式。最常見的方法是使用模板。模板包含html輸出的靜態部分以及能插入動態內容的一些特殊語法。有關使用模板建立html頁面的例項...