基于Django創建一個WEB后端框架(DjangoRestFramework+MySQL)流程

一、Django項目初始化

1.創建Django項目

Django-admin startproject 項目名

2.安裝 djangorestframework

pip install djangorestframework ?

解釋:

Django REST Framework (DRF) 是基于 Django 框架的一個強大的 Web API 框架,提供了多種工具和庫來構建 RESTful API。它為我們提供了許多開箱即用的功能,例如序列化、驗證、文檔化、渲染和視圖,使我們能夠快速構建出功能強大的 Web API。

3.注冊應用app

INSTALLED_APPS 配置相當于注冊了Django項目中需要使用的應用。通過將應用名稱添加到 INSTALLED_APPS 列表中,Django會識別并加載這些應用,使其功能在項目中可用。

4.修改數據庫配置

Django自帶一個sqlite小型數據庫但是其寫操作是全數據庫級別的鎖,這意味著在同一時間只有一個寫操作可以執行。對于高并發的寫操作場景,性能會受到限制。我們將其切換至常規使用的Mysql數據庫并在Mysql中創建對應的數據庫

下面的一步是為了導入pymysql將pymysql適配為mysqldb的接口

二、構建模型

1.創建app

Python manage.py startapp appname

執行之后就會生成對應的app模塊了

接著要在settings.py模塊中注冊app

2.創建模型

models.Model 是 Django 框架中的一個基類,所有自定義的模型類都需要繼承它。通過繼承 models.Model,Django 可以為你的模型提供一系列功能,例如將類映射到數據庫表、自動管理數據庫遷移、提供 ORM(對象關系映射)接口等。

3.創建數據遷移文件以及進行數據遷移(至數據庫也就是通過定義上述模型類執行相關命令在數據庫中建表)

Python manage.py makemigrations #創建數據遷移文件

Python manage..py migrate #進行數據遷移

命令執行成功之后數據庫模型(表)就創建出來了

三、體驗Django提供的管理界面 注冊后的模型可以在管理界面上增刪改查

我們可以通過DjangoRDF自帶的增刪改查的前端交互頁面

步驟:

在app的admin.oy文件下輸入圖片中的代碼片段 將Article注冊到admin控制臺當中

接著創建一個超級用戶登錄模型管理界面

Python manage.py createsuperuser

創建好之后運行項目

Python manage.py runserver 127.0.0.1:port port可以自己設置端口號

瀏覽器輸入http://127.0.0.1:8000/admin/即可進入到管理界面

四、創建Restful風格api

1.創建api調用層

2.將請求映射文件注冊到主URL配置當中

3.創建序列化器模塊以便模型對象序列化后便于傳輸

4.創建接口并指定接口允許的請求方式

5.將接口注冊到路由當中

這樣一個接口就創建好可以正常調用了

測試一下

一個基本的Django后端框架就搭建好了

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/72901.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/72901.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/72901.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

VUE3開發-9、axios前后端跨域問題解決方案

VUE前端解決跨域問題 前端頁面需要改寫 如果無效,記得重啟服務器 后端c#解決跨域問題 前端js取值,后端c#跨域_c# js跨域-CSDN博客

DailyNotes 增加提醒功能

TODO:準備給 DailyNotes 增加一個提醒功能,準備接入 AI 來做一些事情。試了一下,非常靠譜。 具體 DailyNotes 和 Ollama 的交互方式,可以直接調用命令行,也可以走網絡API。 rayuK2CD9WCYN4 ~ % ollama run deepseek-…

PY32MD320單片機 QFN32封裝,內置多功能三相 NN 型預驅。

PY32MD320單片機是普冉半導體的一款電機專用MCU,芯片采用了高性能的 32 位 ARM Cortex-M0 內核,主要用于電機控制。PY32MD320嵌入高達 64 KB Flash 和 8 KB SRAM 存儲器,最高工作頻率 48 MHz。PY32MD320單片機的工作溫度范圍為 -40 ~ 105 ℃&…

OpenManus介紹及本地部署體驗

1.OpenManus介紹 OpenManus,由 MetaGPT 團隊精心打造的開源項目,于2025年3月發布。它致力于模仿并改進 Manus 這一封閉式商業 AI Agent 的核心功能,為用戶提供無需邀請碼、可本地化部署的智能體解決方案。換句話說,OpenManus 就像…

【貪心算法】簡介

1.貪心算法 貪心策略:解決問題的策略,局部最優----》全局最優 (1)把解決問題的過程分成若干步 (2)解決每一步的時候,都選擇當前看起來的“最優”的算法 (3)“希望”得…

springboot知識點以及源碼解析(2)

web開發--靜態規則與定制化 springboot對靜態資源的映射規則:在類路徑下面定義目錄static或public或resources或者META-INF/resources,訪問時項目根目錄靜態資源的名稱 在springboot中,如果項目中存在同名的靜態資源和同名的動態資源。那么我…

C++:string容器(下篇)

1.string淺拷貝的問題 // 為了和標準庫區分,此處使用String class String { public :/*String():_str(new char[1]){*_str \0;}*///String(const char* str "\0") // 錯誤示范//String(const char* str nullptr) // 錯誤示范String(const char* str …

使用 vxe-table 導出 excel,支持帶數值、貨幣、圖片等帶格式導出

使用 vxe-table 導出 excel,支持帶數值、貨幣、圖片等帶格式導出,通過官方自動的導出插件 plugin-export-xlsx 實現導出功能 查看官網:https://vxetable.cn gitbub:https://github.com/x-extends/vxe-table gitee:htt…

JavaScript數據類型和內存空間

一、JavaScript 數據類型 基本數據類型:字符串(String)、數字(Number)、布爾(Boolean)、空(Null)、未定義(Undefined)、Symbol 引用數據類型:對象(Object)、數組(Array)、函數(Fun…

DNS Beaconing

“DNS Beaconing” 是一種隱蔽的網絡通信技術,通常與惡意軟件(如木馬、僵尸網絡)相關。攻擊者通過定期發送 DNS請求 到受控的域名服務器(C&C服務器),實現與惡意軟件的隱蔽通信、數據傳輸或指令下發。由…

python中采用opencv作常規的圖片處理的方法~~~

在python中,我們經常會需要對圖片做灰度/二值化/模糊等處理,這時候opencv就是我們的好幫手了,下面我來介紹一下相關用法: 首先,需要安裝opencv-python庫: 然后,在你的代碼中引用: import cv2 最后就是代碼了&#x…

CmBacktrace的學習跟移植思路

學習移植CmBacktrace需要從理解其核心功能、適用場景及移植步驟入手,結合理論學習和實踐操作。以下是具體的學習思路與移植思路: 一、學習思路 理解CmBacktrace的核心功能 CmBacktrace是針對ARM Cortex-M系列MCU的錯誤追蹤庫,支持自動診斷Har…

支付寶當面付java,php,sdk下載

SDK & Demo 獲取 - 支付寶文檔中心 開放平臺服務端 SDK 為了幫助開發者調用開放接口,支付寶提供了開放平臺服務端 SDK,包含 Java、PHP、NodeJS、Python 和 .NET 等語言版本,DEMO 中封裝了簽名 & 驗簽、HTTP 接口請求等基礎功能。 詳…

Cocos Creator Shader入門實戰(三):CCEffect參數配置講解

引擎版本:3.8.5 您好,我是鶴九日! 回顧 稍微回顧下前面兩篇博客講解的內容: 一、Cocos渲染效果的實現需要Material材質和Effect資源的互相配合。 二、Effect資源負責Shader片段的編寫和屬性配置,Material材質負責對E…

AI日報 - 2025年3月10日

AI日報 - 2025年3月10日 🌟 今日概覽(60秒速覽) ▎🤖 AGI突破 | Anthropic CEO預測強AI最早2026年到來 🔬 SAGE框架提升問答質量61.25%,Reflexion框架將GPT-4成功率提至91% ▎💼 商業動向 | xA…

【SegRNN 源碼理解】【今天不水文系列】編碼器部分理解

我來小小的理解一下: 首先,16 batchsize,60sequendcelength,7 個特征的通俗解釋 16 個獨立的樣本,每個樣本有 60 個連續的時間步及對應的標簽值,每個時間步有 60 個特征 所以就是因為樣本是隨機從訓練集…

加速科技Flex10K-L測試機:以硬核創新重塑顯示驅動芯片測試新標桿!

在2024年召開的世界顯示產業創新發展大會上,加速科技自主研發的高密度顯示驅動芯片測試設備Flex10K-L憑借其突破性技術創新,成功入選"十大創新技術(產品)"。作為國內顯示驅動芯片測試領域的標桿性設備,Flex1…

Docker 部署 Vaultwarden

一、前言 1. 官網 1.1 Vaultwarden https://github.com/dani-garcia/vaultwarden https://github.com/wcjxixi/Vaultwarden-Wiki-Chn https://hub.docker.com/r/vaultwarden/server https://rs.ppgg.in/ # Vaultwarden Wiki 中文版 https://geekdaxue.co/read/Vaultward…

如何下載和使用Git:初學者指南

🌟 如何下載和使用Git:初學者指南 在當今的軟件開發中,Git已經成為不可或缺的版本控制系統。無論你是獨立開發者還是團隊成員,掌握Git的基本操作都能幫助你更高效地管理代碼。今天,我將詳細介紹如何下載和使用Git&…

doris: SQL Server

Doris JDBC Catalog 支持通過標準 JDBC 接口連接 SQL Server 數據庫。本文檔介紹如何配置 SQL Server 數據庫連接。 使用須知? 要連接到 SQL Server 數據庫,您需要 SQL Server 2012 或更高版本,或 Azure SQL 數據庫。 SQL Server 數據庫的 JDBC 驅動…