該專欄學習筆記環境引數如下:
開發工具:
補充說明:
本人電腦存在多個版本的python,那麼當你電腦存在多個版本python,如何使用?如何指定pip安裝到指定版本?通過py 選擇版本,然後進行相關命令操作。詳見:https://blog.csdn.net/stone_tigerLI/article/details/121496828,自行百度不贅訴
Django分層設計也是通過MTV,區別於Flask,這些相關內容Django都有,不需要依賴擴充套件。安裝Django時,自己要在網上查詢一下你安裝的Django版本和你的Python版本相容不相容!
import django django.__version__
templates:模板目錄
test_django:專案目錄
manage.py:命令列管理工具
啟動伺服器方式一: python manage.py runserver
啟動伺服器方式二:
思考:我想指定啟動的埠怎麼辦?
知識點1:選擇專案直譯器,通過cmd執行django-admin建立的專案需要進行選擇。pycharm方式建立的專案不需要選擇,因為在建立專案的時候已經選擇過了直譯器
知識點2:啟動開發伺服器 python manage.py runserver ,runserver常用引數
指定IP啟動後,根據頁面提示資訊,我們需要在setting.py設定ALLOWED_HOSTS,由於安全的需要,需要指定哪些主機是可以存取的;新增好之後,再次存取就OK了
建立範例hello模組: python manage.py startapp hello ,模組的含義以及生成的內容會在後面筆記中寫,該篇隨筆只是認識Django框架
第一步:在views.py檔案中寫個函數
第二步:在urls.py設定規則
知識點:
什麼是檢視?
一個檢視函數,簡稱為檢視,是一個簡單的Python函數。函數定義的位置是在模組的views.py檔案中,傳入request引數,request這個引數是固定的必須得有,當然你也可以叫其他名字。
檢視函數的作用:就是接受一個請求,返回一個響應;
URL的設計:設計簡單優雅的URL:使用正規表示式、指定引數型別
URL的常用設定:函數 path(route,view,name,**kwargs) \函數 include(urls,namespace) ;path函數就是之前上述例子urls.py檔案中使用的,include函數就是我們在使用模組化開發的時候進行使用,希望把某一個模組下的url單獨進行管理,然後再把所有模組的url整合到一起,這個時候就需要用到include函數。
通過django專案的組態檔settings.py我們看到,根url是圖示的urls檔案
include範例:按模組管理url,首先在hello模組下新建一個urls檔案
URL與檢視的關係:
檢視響應的內容:
小結:檢視是一個Python函數,用來處理http請求。通過path和include函數設定url,將url和檢視函數關係建立起來。
知識點:
其實和FLASK差不多
render_to_string(template_name,context=None,request=None,using=None)
補充說明:組態檔settings.py檔案的TEMPLATES屬性說明
補充說明:Django框架尋找模板的順序,程式會先去根目錄的templates下尋找對應的html檔案,若根目錄下的templates下沒有對應的html檔案,程式會去模組下的templates尋找對應的html。若根目錄和模組目錄的templates都有這個html檔案,會執行根目錄下的html檔案。這個執行順序是無法修改的!
想讓程式去模組目錄裡面找html檔案怎麼設定呢?
render(request,template_name,context=None,content_type=None,status=None,using=None) ,實際工作當中render()的使用頻率要高於render_to_string(),因為它使用起來更簡單。
知識點:
請求物件HttpRequest其實是Django框架中寫好的一個類,它把我們每一次發過來的請求封裝成一個物件。檢視中使用的使用,方法傳遞進去的request,就是HttpRequest的範例。它裡面有一些常用的屬性和方法可以提供給我們使用: