Django中ORM的基本使用教程
前言
Django框架功能齊全自帶數(shù)據(jù)庫操作功能,本文主要介紹Django的ORM框架
到目前為止,當我們的程序涉及到數(shù)據(jù)庫相關操作時,我們一般都會這么搞:
- 創(chuàng)建數(shù)據(jù)庫,設計表結(jié)構(gòu)和字段
- 使用 MySQLdb 來連接數(shù)據(jù)庫,并編寫數(shù)據(jù)訪問層代碼
- 業(yè)務邏輯層去調(diào)用數(shù)據(jù)訪問層執(zhí)行數(shù)據(jù)庫操作
ORM
orm(object-relation-mapping)對象關系映射,即用對象來表示關系數(shù)據(jù)庫中的表:
類 --> 表,
對象-->一行數(shù)據(jù)
對象的屬性-->一行屬性的一個字段
比如說一個用戶信息表:
class User: def __init__(self,name,age): self.name = name self.age = age
這樣我們就定義了一個類,有name和age屬性,之后我們每創(chuàng)建一個對象都有一個自己的name和age值,就好比我們創(chuàng)建了一個表格,有name和age字段,每一行數(shù)據(jù)都有自己的name和age。
那么我們怎么在Django中應用呢,首先,Django使用了MVT模型,即:模型、視圖、模板,相較于MVC(模型-視圖-控制器)而言,其中MVT中的T(templates)和MVC中的V(views)都表示一種可以看得見的一種數(shù)據(jù)渲染圖,而MVT(views)和MVC中的C(controls)都表示一種邏輯,即當瀏覽器請求的時候服務器該怎么返回數(shù)據(jù),最后,MVT中的M(models)和MVC中的M(models)都表示數(shù)據(jù)存儲部分,即數(shù)據(jù)庫。
于是,如果我們需要創(chuàng)建表格就要創(chuàng)建類,就要在modles.py中創(chuàng)建,如下:
from django.db import models # Create your models here. class User(models.Model): username = models.CharField(max_length=32) password = models.CharField(max_length=32)
其中CharFiled相當于數(shù)據(jù)庫中的varchar,與之對應的還要Decimal、Datatime等等。
接下來就是我們要把數(shù)據(jù)存儲在哪個數(shù)據(jù)庫了,好在Django自己生成了一個 db.sqlite3
文件,那么接下來我們就要去setting.py文件中去配置數(shù)據(jù)庫,如下:
然后就需要打開我們的sqlite數(shù)據(jù)庫文件看看了,這里,我們?nèi)绻褂胮ycharm,可以按如下操作:
點擊側(cè)邊那里
選擇類型
點擊圖標
找到sqlite3文件然后應用。
此時發(fā)現(xiàn):
中并沒有user表,這時,我們需要再執(zhí)行兩條終端命令:
打開終端
第一條命令: python manage.py makemigration
第二條命令: python manage.py migrate
然后刷新:
就可以看到表格了,雙擊就可以進行編輯啦?。。?/p>
到此這篇關于Django中ORM基本使用的文章就介紹到這了,更多相關Django中ORM使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python從數(shù)據(jù)庫讀取大量數(shù)據(jù)批量寫入文件的方法
今天小編就為大家分享一篇Python從數(shù)據(jù)庫讀取大量數(shù)據(jù)批量寫入文件的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-12-12Python?FastApi結(jié)合異步執(zhí)行方式
這篇文章主要介紹了Python?FastApi結(jié)合異步執(zhí)行方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-06-06Python操作數(shù)據(jù)庫之數(shù)據(jù)庫編程接口
這篇文章主要介紹了Python操作數(shù)據(jù)庫之數(shù)據(jù)庫編程接口,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,感興趣的小伙伴可以參考一下2022-06-06pandas 數(shù)據(jù)索引與選取的實現(xiàn)方法
這篇文章主要介紹了pandas 數(shù)據(jù)索引與選取的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-06-06