欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django中ORM的基本使用教程

 更新時(shí)間:2020年12月22日 09:09:48   作者:JonnyJiang-zh  
這篇文章主要給大家介紹了關(guān)于Django中ORM基本使用的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

前言

Django框架功能齊全自帶數(shù)據(jù)庫操作功能,本文主要介紹Django的ORM框架

到目前為止,當(dāng)我們的程序涉及到數(shù)據(jù)庫相關(guān)操作時(shí),我們一般都會這么搞:

  • 創(chuàng)建數(shù)據(jù)庫,設(shè)計(jì)表結(jié)構(gòu)和字段
  • 使用 MySQLdb 來連接數(shù)據(jù)庫,并編寫數(shù)據(jù)訪問層代碼
  • 業(yè)務(wù)邏輯層去調(diào)用數(shù)據(jù)訪問層執(zhí)行數(shù)據(jù)庫操作

ORM

orm(object-relation-mapping)對象關(guān)系映射,即用對象來表示關(guān)系數(shù)據(jù)庫中的表:

類 --> 表,

對象-->一行數(shù)據(jù)

對象的屬性-->一行屬性的一個(gè)字段

比如說一個(gè)用戶信息表:

class User:
 def __init__(self,name,age):
  self.name = name
  self.age = age

這樣我們就定義了一個(gè)類,有name和age屬性,之后我們每創(chuàng)建一個(gè)對象都有一個(gè)自己的name和age值,就好比我們創(chuàng)建了一個(gè)表格,有name和age字段,每一行數(shù)據(jù)都有自己的name和age。

那么我們怎么在Django中應(yīng)用呢,首先,Django使用了MVT模型,即:模型、視圖、模板,相較于MVC(模型-視圖-控制器)而言,其中MVT中的T(templates)和MVC中的V(views)都表示一種可以看得見的一種數(shù)據(jù)渲染圖,而MVT(views)和MVC中的C(controls)都表示一種邏輯,即當(dāng)瀏覽器請求的時(shí)候服務(wù)器該怎么返回?cái)?shù)據(jù),最后,MVT中的M(models)和MVC中的M(models)都表示數(shù)據(jù)存儲部分,即數(shù)據(jù)庫。

于是,如果我們需要?jiǎng)?chuàng)建表格就要?jiǎ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相當(dāng)于數(shù)據(jù)庫中的varchar,與之對應(yīng)的還要Decimal、Datatime等等。

接下來就是我們要把數(shù)據(jù)存儲在哪個(gè)數(shù)據(jù)庫了,好在Django自己生成了一個(gè) db.sqlite3 文件,那么接下來我們就要去setting.py文件中去配置數(shù)據(jù)庫,如下:

然后就需要打開我們的sqlite數(shù)據(jù)庫文件看看了,這里,我們?nèi)绻褂胮ycharm,可以按如下操作:

點(diǎn)擊側(cè)邊那里

選擇類型

點(diǎn)擊圖標(biāo)

找到sqlite3文件然后應(yīng)用。

此時(shí)發(fā)現(xiàn):

中并沒有user表,這時(shí),我們需要再執(zhí)行兩條終端命令:

打開終端

第一條命令: python manage.py makemigration
第二條命令: python manage.py migrate

然后刷新:

就可以看到表格了,雙擊就可以進(jìn)行編輯啦?。?!

到此這篇關(guān)于Django中ORM基本使用的文章就介紹到這了,更多相關(guān)Django中ORM使用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python并發(fā)編程線程消息通信機(jī)制詳解

    Python并發(fā)編程線程消息通信機(jī)制詳解

    這篇文章主要為大家介紹了Python并發(fā)編程之線程消息通信機(jī)制的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2021-10-10
  • Python從數(shù)據(jù)庫讀取大量數(shù)據(jù)批量寫入文件的方法

    Python從數(shù)據(jù)庫讀取大量數(shù)據(jù)批量寫入文件的方法

    今天小編就為大家分享一篇Python從數(shù)據(jù)庫讀取大量數(shù)據(jù)批量寫入文件的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python繪制地理圖表可視化神器pyecharts

    Python繪制地理圖表可視化神器pyecharts

    這篇文章主要介紹了Python繪制地理圖表可視化神器pyecharts,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-07-07
  • matplotlib繪制雷達(dá)圖的基本配置(萬能模板案例)

    matplotlib繪制雷達(dá)圖的基本配置(萬能模板案例)

    本文主要介紹了matplotlib繪制雷達(dá)圖的基本配置(萬能模板案例),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • Python?FastApi結(jié)合異步執(zhí)行方式

    Python?FastApi結(jié)合異步執(zhí)行方式

    這篇文章主要介紹了Python?FastApi結(jié)合異步執(zhí)行方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Python操作數(shù)據(jù)庫之?dāng)?shù)據(jù)庫編程接口

    Python操作數(shù)據(jù)庫之?dāng)?shù)據(jù)庫編程接口

    這篇文章主要介紹了Python操作數(shù)據(jù)庫之?dāng)?shù)據(jù)庫編程接口,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下
    2022-06-06
  • 對python中的argv和argc使用詳解

    對python中的argv和argc使用詳解

    今天小編就為大家分享一篇對python中的argv和argc使用詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python讀寫文件基礎(chǔ)知識點(diǎn)

    Python讀寫文件基礎(chǔ)知識點(diǎn)

    在本篇文章中小編給大家整理了關(guān)于Python讀寫文件的基礎(chǔ)知識內(nèi)容,有興趣的朋友們跟著學(xué)習(xí)下。
    2019-06-06
  • 對Python3中的input函數(shù)詳解

    對Python3中的input函數(shù)詳解

    下面小編就為大家分享一篇對Python3中的input函數(shù)詳解,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • pandas 數(shù)據(jù)索引與選取的實(shí)現(xiàn)方法

    pandas 數(shù)據(jù)索引與選取的實(shí)現(xiàn)方法

    這篇文章主要介紹了pandas 數(shù)據(jù)索引與選取的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06

最新評論