Django中的ORM的使用步驟----以MySQL為例

1 以純Python的形式創建項目虛擬環境

在這里插入圖片描述

2 命令安裝Django

在這里插入圖片描述

3 在當前虛擬環境目錄下命令創建Django項目

在這里插入圖片描述

4 命令創建app

在這里插入圖片描述
在這里插入圖片描述

注:
若想將創建的子應用存放到指定目錄,如app,
那么需要先手動創建app目錄,再手動創建子應用目錄,如orm_1,
最后通過命令 "python manage.py startapp 子應用名 apps/子應用名" 創建子應用即可

5 在settings.py中注冊app

在這里插入圖片描述
注:若子應用不是存放到項目根目錄中,需要在apps.py中更改name屬性的值為對應路徑
在這里插入圖片描述

6 命令安裝mysqlclient

在這里插入圖片描述

當然,也可以安裝pymysql,與之不同的是,需要在主應用的init.py中寫上:
import pymysql
pymysql.install_as_MySQLdb()

在這里插入圖片描述

7 在MySQL中新建數據庫

在這里插入圖片描述

8 在settings.py中配置mysql信息

在這里插入圖片描述

9 在子應用的models.py中創建模型類

from django.db import models# Create your models here.
class NewsType(models.Model):"""新聞類型模型表時尚、國際、體育、娛樂......"""# 類型名稱type_name = models.CharField(verbose_name="類型名稱", max_length=40, unique=True)class Meta:# 指定數據表名db_table = 'news_type'class News(models.Model):"""新聞文章模型表"""# 新聞標題news_title = models.CharField(verbose_name="新聞標題", max_length=100)# 新聞內容news_content = models.TextField(verbose_name="新聞內容")# 閱讀人數read_num = models.IntegerField(verbose_name="閱讀人數", default=0)# 評論總數comment_num = models.IntegerField(verbose_name="評論總數", default=0)# 與NewsType是 多對多 的關系news_type = models.ManyToManyField("NewsType", db_table="news_to_type")class Meta:db_table = 'news'

10 編譯models.py中的模型類

python manage.py makemigrations

11 同步到數據庫

python manage.py migrate

12 在子應用的views.py編寫函數操作數據庫

在這里插入圖片描述
具體相關內容,可在本篇文章:Django 細細查看

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

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

相關文章

Rust 學習筆記:通過 Send 和 Sync trait 實現可擴展并發性

Rust 學習筆記:通過 Send 和 Sync trait 實現可擴展并發性 Rust 學習筆記:通過 Send 和 Sync trait 實現可擴展并發性Send trait:允許在線程之間轉移所有權Sync trait:允許多線程訪問手動實現 Send 和 Sync 是不安全的練習題 Rust…

【C++】第十一節—一文詳解vector(使用+楊輝三角+深度剖析+模擬實現+細節詳細補充)

Hi,我是云邊有個稻草人,偶爾中二的C領域博主^(* ̄(oo) ̄)^,與你分享專業知識—— C_本篇博客所屬專欄—持續更新中—歡迎訂閱喔 目錄 一、vector的介紹及使用 1.1 vector的介紹 1.2 vector的使用 (1&…

華為智選攜手IAM:突破技術邊界,重塑智慧健康家居新時代

華為智選與IAM的聯動創研,是科技與健康兩大領域深度結合的推動者,更是健康智能家電創新的引領者。他們不再只是產品的制造商,而是生活方式的革新者——用創新科技重構健康生活,用智慧生態重塑家居體驗。在這場深度的跨界融合中&am…

基于cornerstone3D的dicom影像瀏覽器 第三十一章 從PACS服務加載圖像

文章目錄 前言一、兩個服務接口1. 查詢檢查接口2. 查詢圖像接口 二、查詢界面組件三、修改歸檔總結 前言 "基于cornerstone3D的dicom影像瀏覽器"系列文章中都是加載本地文件夾的的dicom圖像。 作為一個合格的dicom影像瀏覽器需要對接PACS服務端,從PACS服…

STM32+rt-thread判斷是否聯網

一、根據NETDEV_FLAG_INTERNET_UP位判斷 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…

基于React Native開發HarmonyOS 5.0醫療類應用

隨著HarmonyOS 5.0的發布和React Native技術的成熟,開發者現在可以利用React Native框架為HarmonyOS平臺構建高性能的跨平臺醫療應用。 一、技術選型與優勢 1.React Native HarmonyOS的組合優勢 (1)跨平臺能力??:React Nati…

姜偉生《統計至簡》

姜偉生《統計至簡》 系列叢書之一 這套書圖真漂亮,字間距也大,特別合適直接作為課件。但是理論上弱,有的地方算法也get不點上。適合初學者,因為能看圖說話;又不適合初學者,因為沒有解析、沒有分析。 這學…

滾動—橫向滾動時,如何直接滾動到對應的內容板塊

使用scrollIntoView方法方法解讀 scrollIntoView 是 HTML 元素(HTMLElement)的一個方法。當調用該方法時,它會嘗試將調用它的元素滾動到瀏覽器的可視區域內。這個方法特別適用于處理頁面上的滾動行為,比如讓用戶能夠快速定位到頁面…

HTML5 定位網頁元素

1. 定位(position) position:static(標準) position:relative(相對定位) 偏移量的方向 相對定位的規律 浮動元素設置相對定位 position:absolute(絕對…

分類數據集 - 植物分類數據集下載

數據集介紹:植物分類數據集,真實場景高質量圖片數據;適用實際項目應用:自然場景植物分類項目,以及作為通用分類數據集場景數據的補充;數據集類別:標注說明:采用文件夾來區分不同的目…

?React Hooks 的閉包陷阱問題

這是主包在面試中遇到的一道題目,面試官的問題是:"這個頁面初次展示出來時Count和step的值是什么,我點擊按鈕count和step的值有什么變化?“ 這個題目主包回答的不好,所以想做一個總結。 題目 import React, { …

新基建浪潮下:中國新能源汽車充電樁智慧化建設與管理實踐

在新基建戰略的強力推動下,中國新能源汽車充電樁建設正迎來智慧化升級的重要機遇期。作為連接能源革命與交通革命的關鍵節點,充電基礎設施的智能化轉型不僅關乎新能源汽車產業的可持續發展,更是構建新型電力系統的重要支撐。當前,…

如何在多任務環境中設定清晰的項目優先級?

在多任務環境中設定清晰的項目優先級需要明確項目戰略價值、緊急性、資源利用效率、風險管理。其中,明確項目戰略價值尤為重要,它決定了項目對組織整體戰略目標實現的貢獻程度。例如,戰略價值高的項目,即使不緊急,也應…

【Django】性能優化-普通版

性能優化: 思路 通常無論是什么編程語言或者是什么框架,瓶頸通常都是數據庫相關的操作; 大部分的查詢慢的問題接口都是頻繁查庫、全盤掃描、多層for循環嵌套、高頻查redis、序列化時多級外鍵; 多用O(1)查找復雜度的數據 合理使…

數據治理域——離線數據開發

摘要 文本主要介紹了離線數據開發相關內容,包括業務與流程、阿里MaxCompute系統設計以及阿里調度系統設計。離線數據開發是大數據開發核心組成部分,用于處理批量數據,支持企業多種需求,其流程涵蓋需求調研、數據源接入等環節。阿里MaxCompute系統架構與特點被闡述,調度系…

python-docx 庫教程

Python-docx 庫介紹 官網文檔 python-docx 是一個用于創建和修改 Microsoft Word (.docx) 文件的 Python 庫。它允許你通過編程方式生成格式化的文檔,添加文本、段落、表格、圖片等元素,而無需依賴 Microsoft Word 應用程序。 主要功能 創建新的 Word…

Ansible小試牛刀

注意事項 除了安裝的zabbix相關組件 使用此腳本安裝的所有軟件版本均為系統默認版本 安裝軟件 zabbix相關組件,包括server,agent等 MySQL Redis NGINX openjdk maven nodejs keepalived iptables ipvsadm 使用劇本 --- - hosts: allname…

MCP使用

什么是MCP Model Context Protocol (MCP) 是由 Anthropic 公司于 2024 年 11 月推出的一種開放協議標準,目的在于標準化LLM 與外部數據源、工具及服務之間的交互方式。MCP 被廣泛類比為“AI 領域的 USB-C 接口” MCP與Function Calling的區別 MCP 的核心概念 1.…

邊緣計算一:現代前端架構演進圖譜 —— 從 SPA 到邊緣渲染

過去十年,前端項目架構經歷了從簡單 HTML 文件到復雜框架的飛躍,但很多開發者忽略了**“渲染位置”與“資源交付方式”**對體驗與性能的根本性影響。 從最初的瀏覽器渲染,到現在“在離用戶最近的地方動態返回 HTML”,架構正在悄悄…

linux學習記錄(六)三個常用命令介紹

1.vim命令 Vim是由Vi發展過來的文本編譯器,其代碼補全、編譯及錯誤跳轉等方便編程的功能特別豐富,在程序員中被廣泛使用。 1.1 語法 vim filename 1.2 vi/vim的使用 vi/vim 共分為三種模式,命令模式(Command Mode)、…