亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

完美主義者的最終框架

發布時間:2020-09-28 05:12:19 來源:網絡 閱讀:202 作者:eflypro小普 欄目:云計算

Django模型是與數據庫相關的,與數據庫相關的代碼一般寫在 models.py中,Django支持sqlite3,MySQL,PostgreSQL等數據庫,只需要在settings.py中配置即可,不用更改models.py中的代碼,豐富的API極大的方便了使用。

Model相對于傳統的三層或者mvc框架來說就相當于數據處理層,它主要負責與數據的交互,在使用django框架設計應用系統時,需要注意的是django默認采用的是orm框架中的codefirst模型,也就是說開發人員只需要專注于代碼的編寫,而不需要過多的關注數據庫層面的東西,把開發人員從數據庫中解放出來

django會根據Model類生成一個數據庫鏡像文件,然后再使用該鏡像文件生成數據庫,同時該文件將記錄與數據庫同步版本的變化,所以在使用django進行開發時不要手工去修改數據庫,這樣會造成django框架的版本記錄不正確,從而無法正確的同步數據模型與數據庫的內容。Django中引用了ORM(Objects Relational Mapping)對象關系映射,對不同的數據庫都提供了同一調用的API。ORM是一種程序技術,用于實現面向對象編程語言里不同類型系統的數據之間的轉換。可以簡單理解為翻譯機。

下面通過簡單的代碼來看看model是怎么創建數據庫的。


創建工程和APP

創建工程:

django-admin startproject douban

創建應用:

在douban工程項目目錄下輸入:

python manage.py startapp book(你想建立的app名稱)

建立一個叫book的app

這樣,在你的工程項目douban目錄下會出現一個叫book的目錄

將我們新建的應用(book)添加到 settings.py 中的 INSTALLED_APPS中,也就是告訴Django有這么一個應用。

完美主義者的最終框架


創建Model

在book目錄下進入models.py輸入類似下面的代碼:

完美主義者的最終框架


上面的每個class相當于一個新的table

django會自動給每個model配置一個名為id的primary key


同步數據庫

在shell中輸入

python manage.py makemigrations? ? ? ?#建立了模型到表的映射關系

python manage.py migrate? ? ? ? ? ? ? ? ? ? ? ? #生成表

之后你應該能看到諸如:

Creating tables...

Creating tablebooks_publisher

Creating tablebooks_author

Creating tablebooks_book_authors

Creating tablebooks_book

Installingcustom SQL ...

Installingindexes ...

Installed 0object(s) from 0 fixture(s)

這樣的信息


使用Navicat可以直觀看到生成的表

完美主義者的最終框架


數據庫的增刪改查

(插入一個新的對象) insert:

在python-shell下面操作可以直接操作


from book.modelsimport Author

?? 方法1:

p1 =Author(name='zhangsan',age=30,email='zhangsan@126.com')

p1.save()

?? 方法2:

p1 = Author()

p1. name='zhangsan'

p1.age =30

p1.email='zhangsan@126.com'

p1.save()

?? 方法3:

Author.objects.create(name='zhangsan',age=30,email='zhangsan@126.com')

?? 方法4:

Author.objects.get_or_create(name='zhangsan',age=30,email='zhangsan@126.com)

第4種方法是防止重復很好的方法, 但是速度要相對慢些, 返回一個元組, 第一個為Author對象, 第二個為True或False,新建時返回的是True, 已經存在時返回False.


(查詢或選擇對象)select:

在python-shell下面操作可以直接操作

完美主義者的最終框架


(更新對象)update:

在python-shell下面操作可以直接操作

完美主義者的最終框架


(刪除對象)delete:

在python-shell下面操作可以直接操作

完美主義者的最終框架



向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南川市| 桐柏县| 罗源县| 察隅县| 鸡西市| 涞源县| 枝江市| 清苑县| 分宜县| 西昌市| 奉贤区| 蒲江县| 朝阳市| 平顶山市| 建德市| 石首市| 富宁县| 宕昌县| 饶河县| 汶上县| 新干县| 金溪县| 连江县| 成安县| 霍林郭勒市| 商河县| 客服| 漾濞| 大理市| 兰溪市| 海淀区| 岳池县| 大同市| 博罗县| 二手房| 广宁县| 中卫市| 铜鼓县| 田东县| 健康| 上栗县|