作為一名剛接觸 Django 的開發者,我在學習過程中整理了這份入門筆記,涵蓋 Django 框架基礎、環境搭建、第一個項目創建以及核心配置,希望能為同樣剛入門的小伙伴提供清晰的學習思路。
一、Django 框架基礎認知
在開始實際操作前,先對 Django 框架有個基礎了解,能讓后續學習更順暢。
Django 遵循 MTV(模型 - 模板 - 視圖)架構,這是從 MVC(模型 - 視圖 - 控制器)模式演變而來,各組件功能明確:
1.1 什么是 Django
Django 是一款高級 Python Web 開源框架,發音為d???g??
。它由經驗豐富的開發人員構建,解決了 Web 開發中諸多常見問題,能讓開發者專注于應用程序編寫,無需 “重復造輪子”。近年來,隨著 Python 地位的上升,Django 發展迅猛,版本更新迭代快。截至目前,最新版本是 5.2.5 LTS,官方規劃未來兩年將更新到 6.0 LTS 版本。
1.2 Django 的 MTV 架構
- 模型(Model):處于 MTV 模式底層,是數據存取層。負責處理與數據相關的所有事務,比如數據的存取、數據有效性驗證以及數據間關系處理等,還能通過 ORM(對象關系映射)建立業務對象與數據庫的映射。
- 模板(Template):位于 MTV 模式頂層,是表現層。負責處理與表現相關的操作,簡單來說就是決定數據如何在頁面或其他類型文檔中顯示,比如生成 HTML 頁面。
- 視圖(View):處于 MTV 模式中間層,是業務邏輯層。負責存取模型以及調取合適模板的相關邏輯,是連接模型和模板的橋梁,僅負責選擇要展示的數據并傳遞到模板,不處理用戶輸入。
- URL 分發器:雖未在 MTV 名稱中體現,但至關重要,相當于 MVC 模式中的控制器(Controller)。它使用正則表達式匹配 URL,將 URL 頁面請求分發給不同的視圖處理,再由視圖調用相應的模型和模板。
下面是一個簡化的表格,用于展示MVC(Model-View-Controller)、MVT(Model-View-Template)三種設計模式的主要區別:
特性/設計模式 | MVC(模型-視圖-控制器) | MVT(模型-視圖-模板) |
主要目標 | 分離數據管理、業務邏輯與界面呈現。 | 通過清晰的分離關注點來簡化Web應用開發。 |
組件角色 | - Model: 數據存取層。 - View: 用戶界面層。 - Controller: 接收用戶輸入并調用Model和View進行適當響應。 | - Model: 數據存取層。 - View: 視圖層,負責展示邏輯。 - Template: 定義了如何將數據渲染到HTML頁面上。 |
數據流動 | 用戶交互 -> Controller -> Model -> View | 用戶交互 -> View -> Model -> Template |
適用場景 | 適用于需要復雜用戶交互的應用程序。 | 主要用于Web開發,尤其是Django框架中。 |
優點 | 提供良好的分離關注點,便于代碼維護。 | 簡化Web應用開發流程,易于理解。 |
缺點 | 可能導致過多的事件監聽器和回調函數。 | 相比MVC,靈活性較低,特別是在非Web上下文中。 |
MVC和MVT的圖示:
①MVC圖示:
②MVT圖示:
1.3 Django 的核心特點
Django 能成為流行的 Web 框架,離不開其強大的特點:
- 全功能框架:提供從數據庫到模板的完整解決方案,無需額外整合大量第三方工具。
- ORM 系統:強大的對象關系映射功能,簡化數據庫操作,開發者無需編寫復雜的 SQL 語句,用 Python 代碼就能操作數據庫。
- 自動化管理后臺:可自動生成管理界面,方便對網站內容進行管理,大大減少后臺開發工作量。
- 靈活路由系統:支持靈活的 URL 配置,能輕松實現 URL 與視圖的映射。
- 強大模板系統:擁有強大的模板引擎,支持模板繼承,便于實現頁面風格統一和代碼復用。
- 便捷表單處理:簡化表單的創建和驗證流程,降低表單開發難度。
- 內置認證系統:提供內置的用戶認證和權限管理功能,保障網站安全。
- 全面安全特性:能有效防止 SQL 注入、XSS(跨站腳本)、CSRF(跨站請求偽造)等常見網絡攻擊。
- 國際化支持:內置多語言支持,便于開發多語言版本的網站。
- 實用緩存框架:支持多種緩存后端,可提高網站訪問速度,減輕服務器壓力。
二、創建第一個 Django 項目(兩種方式)
安裝好開發環境后,就可以創建第一個 Django 項目了,這里介紹兩種常用的創建方式:通過命令行和通過 PyCharm。
2.1 安裝 Django 框架
完成上述準備工作后,就可以安裝 Django 框架了。
1.打開命令行,輸入以下命令安裝指定版本(5.2.5)的 Django:
python -m pip install Django==5.2.5
2.安裝完成后,驗證是否安裝成功,輸入命令:
django-admin --version
如果能顯示 Django 的版本信息,說明 Django 安裝成功。
安裝好開發環境后,就可以創建第一個 Django 項目了,這里介紹兩種常用的創建方式:通過命令行和通過 PyCharm。
2.2? 通過命令行創建 Django 項目
1. 創建項目目錄:首先在命令行中切換到想要存放項目的目錄,然后輸入以下命令創建一個名為 “django_project” 的項目目錄,并進入該目錄:
mkdir django_project
cd django_project
2.創建虛擬環境:為了避免項目依賴沖突,建議為每個 Django 項目創建獨立的虛擬環境。輸入以下命令創建名為 “venv” 的虛擬環境:
python -m venv venv
什么是虛擬環境?
venv
就是 Python 的“項目隔離罩”,讓你每個項目用自己的 Python 和依賴,干凈、可控、不打架。
3.激活虛擬環境:
- Windows 系統:
venv\Scripts\activate
- macOS/Linux 系統(主播的電腦是windows系統,所以這個就沒有演示了):
source venv/bin/activate
激活成功后,命令行提示符前會顯示 “(venv)”。
4.?安裝 Django:雖然之前已經安裝過 Django,但為了確保虛擬環境中使用的是指定版本,可再次輸入安裝命令(若虛擬環境中已存在,會提示已安裝):
pip install Django==5.2.5
5.創建 Django 項目:輸入以下命令創建一個名為 “mysite” 的 Django 項目:
django-admin startproject mysite
6.進入項目目錄:
cd mysite
7.運行開發服務器:輸入命令啟動 Django 開發服務器:
python manage.py runserver
啟動成功后,在瀏覽器中輸入 “http://127.0.0.1:8000/”,若能看到 Django 的默認歡迎頁面,說明項目創建并啟動成功。
2.3??通過 PyCharm 創建 Django 項目
- 打開 PyCharm,點擊 “New Project”。
- 在彈出的窗口中,選擇 “Django” 選項,然后設置項目的名稱(如 “mysite”)和項目存放位置。
- 選擇 Python 解釋器,建議選擇之前創建的虛擬環境中的 Python 解釋器(若未創建,可在此時通過 “New environment” 選項創建)。
- 點擊 “Create” 按鈕,等待項目初始化完成。
- 項目初始化完成后,點擊 PyCharm 工具欄中的 “Run” 按鈕(或右鍵點擊項目中的 “manage.py” 文件,選擇 “Run 'manage.py runserver'”),啟動開發服務器。
- 同樣在瀏覽器中輸入 “http://127.0.0.1:8000/”,查看是否能正常顯示 Django 歡迎頁面。
創建成功的目錄:
三、兩種啟動項目的方式
3.1 通過指令運行
python manage.py runserver
3.2 通過Pycharm工具運行
runserver
成啟動后打開http://127.0.0.1:8000/的頁面:
四、總結
當你按下 python manage.py runserver
的那一刻,本地回顯的 127.0.0.1:8000 不只是一個歡迎頁面,而是一把鑰匙:
-
它打開了 ORM 讓你用 Python 寫 SQL
-
它鋪好了路由讓你隨心所欲定制 URL
-
它準備好了 MTV 模式,等你把創意塞進模板里
-
它暗裝了 admin 后臺,只等你一句
admin.site.register()
就讓數據庫秒變可視化
今天,我們搭的是“毛坯房”;明天,就能用它長出用戶系統、RESTful API、WebSocket 聊天室、甚至一整個 SaaS。
🎯 評論區立個 Flag 吧:
你打算在這個項目里加什么功能?
是博客、商城、還是私藏已久的腦洞?
留言打卡 + 點贊,過兩周我來圍觀:
誰的 star 最多,我免費出下一篇《從 0 到上線:Django 部署全攻略》!
如果這篇筆記幫你少踩了坑,點個 ?? 與收藏,把干貨轉給那個還在被“環境配置”勸退的伙伴。
Django 的世界很大,我們一起把它跑通、玩爛、再重構!
????????????????????????????????????????????????????????????????????????????????????????????????????????—— 下次見,代碼里相逢。