Django學習筆記

2021-07-27 06:01:37 字數 3731 閱讀 9676

定義:django是乙個基於python的高階web開發框架,高效快速開發,高度整合,免費開源。

瀏覽器響應過程:輸入url->瀏覽器向**伺服器傳送http請求->伺服器處理請求->返回http響應(html文件)->瀏覽器解析展現

瀏覽器基本原理:

1、本質是網路通訊;

2、瀏覽器通過通訊獲取頁面的源**文件(html等);

3、瀏覽器解析文件展現給使用者

安裝python

mac及linux自帶

安裝django

方法一:pip install django==1.10.5   //windows在安裝python時已經預設安裝pip

清理cmd螢幕命令:cls

檢視資料夾目錄:dir

確認django安裝成功:

1、python -m django --version 返回django版本號

2、進入python解析器,import django,不報錯

django編輯器推薦 pycharm、sublime text,atom

建立專案:

開啟命令列->進入想要安置專案目錄->輸入:django-admin.startproject myblog(專案名)

專案目錄介紹:

1、wsgi.py(python web server gateway inte***ce python伺服器網管介面):python應用與web伺服器之間的介面

2、urls.py:url配置檔案,django專案中所有位址(頁面)都需要配置url

3、settings.py:專案的總配置檔案,包含專案根目錄、安全碼、資料庫、debug除錯、web應用、時間等配置。

4、__init__.py:一般為空,有此可直接呼叫該模組

啟動django自帶伺服器:

pythton mange.py runserver  9999 (預設8000埠,如後加埠號進行自定義)

專案建立沒問題後,可用pycharm開啟專案

建立應用:開啟命令列

->

進入專案中mange.py同級

應用目錄介紹:

1、migrations:資料移植(遷移)模組,內容自動生成

2、admin.py:當前應用的後台管理系統配置

4、models.py:資料模組、使用orm框架、類似mvc結構中models(模型)

5、test.py:自動化測試模組,在這裡編寫測試指令碼(語句),django提供自動化測試功能

6、views.py:執行響應的**所在的模組,**邏輯處理的地點,專案中大部分**均在這裡

建立頁面響應:

1、每個響應對應乙個函式,函式必須返回乙個響應;

2、函式必須存在乙個引數,一般約定為request

3、每乙個響應(函式)對應乙個url

配置url:

1、每個url都以url的形式寫出來

2、url函式放在urlpatterns列表中

3、url函式三個引數:url(正則),對應方法、名稱(可空缺)

url(r'^index/$',bv.index)  正規表示式:^以…開頭,$以…結尾、/不能忘

url配置包含其他url配置方法:

templates:html檔案、使用了django模板語音(django template language,dtl)、可以使用第三方模板(如jinja2)

開發template步驟:

模板dtl初步使用:

1、render()函式支援乙個dict型別引數,該字典是後台傳遞到模板(.html)的引數,鍵為引數名。在模板(.html)中使用

}直接使用

templates過濾器:}

models介紹

1、乙個model對應資料庫的一張資料表

2、django中models以

類的形式表現

3、models包含一些

基本欄位和資料的一些

行為 編寫models的步驟:在應用根目錄下建立models.py,並引入models模組(django在建立應用時會自動生成)

->建立類,繼承models.model,該類即是一張資料表

->在類中建立字段,欄位即類裡面的屬性(變數),如attr=models.charfield(max_length=64)

生成資料表:命令列進入manage.py同級目錄-

>執行

pyhton manage.py migrate

python manage.py sqlmigrate 應用名 檔案id 可檢視sql語句

sqlite expert personal,第三方軟體,輕量級,完全免費,可檢視並編輯db.sqlite3

頁面呈現資料:

後台步驟:views.py 中 import models       

->      article = models.article.objects.get( pk = 1 )

-> render(request,page,)

前端步驟:模板可直接使用物件以及物件的」.「操作,如}

admin介紹:admin是django自帶的功能強大的自動化資料庫管理介面,被授權的使用者可直接在admin中管理資料庫,django提供了許多針對admin的定製功能。

配置admin:

1、建立超級使用者

python manage.py createsuperuser

->

localhose:8000/admin admin登陸入口

->

setting.py中language_code = 'zh_hans'漢化

2、配置應用:

在應用下admin.py中引入自身models模組(或裡面的模型類)如

frommodels 

importarticle->

編輯admin.py  

admin

.site.register(article)

修改admin資料預設顯示名稱:在models.py中article類下新增乙個方法->

根據python版本選擇__str__(self)(v3.0)或__unicode__(self)  (v2.7)->

return self.title

admin增強:在admin.py中建立admin配置類class articleadmin(admin.modeladmin)->註冊改為admin.site.register(article,articleadmin)

顯示其他字段:

list_display = ('title' , 'content'),list_display同時支援

tuple和

list

admin過濾:

list_filter = ('pub_time' , )  (注意逗號)

django中超連結templates中可以用

中配置,url_name在應用下url.py中配置

編輯響應函式(如 提交 按鈕)

使用request.post['引數名']獲取表單資料

->

models.article.objects.create(tilte.content建立物件

django shell:它是乙個python的互動式命令列程式,能自動引入專案環境,可以用來與專案進行互動

啟動django shell:

python manage.py shell,可用django shell可用於除錯工作、測試未知方法。

Django學習筆記

django web程式設計思路 global setting run server check environment start project django admin.py startproject mysite 生成專案檔案 manage.py 檔案基本就是 django admin.py...

django學習筆記( )

下面的都是自己學習django框架開發的過程記錄,全當做筆記了,不喜勿噴,大神求指教 環境 ubuntu14.04 django 1.8.3 python 2.7.6 ide eclipse pydev 首先先建立乙個django project 名為blog 再在blog下建立statics與te...

django學習筆記

為了學習fabric,因為fabric的示例用到了django專案,所以就快速地開始根據官網的教程,搭建了簡單的投票應用,剛走通了前幾步。我覺得django搭建 的速度實在是超級快!非常適合快速原型開發。我很喜歡的是,只要改改模型 model view controller的model 也就是核心業...