乙個備受關注、很多人都在使用的軟體,軟體開發團隊會定期發布新版本。其主要目的是修復之前一些 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頁面的例項...