day02-ORM 和模型遷移

ORM(Objects Relational Mapping)對象關(guān)系映射

把面向?qū)ο蟮母拍罡鷶?shù)據(jù)庫中表的概念對應(yīng)起來。
舉例來說就是,我定義一個對象,那就對應(yīng)著一張表,這個對象的實例,就對應(yīng)著表中的一條記錄。

用來把對象模型表示的對象映射到基于S Q L 的關(guān)系模型數(shù)據(jù)庫結(jié)構(gòu)中去。這樣,我們在具體的操作實體對象的時候,
就不需要再去和復(fù)雜的 SQ L 語句打交道,只需簡單的操作實體對象的屬性和方法
ORM 技術(shù)是在對象和關(guān)系之間提供了一條橋梁,
前臺的對象型數(shù)據(jù)和數(shù)據(jù)庫中的關(guān)系型的數(shù)據(jù)通過這個橋梁來相互轉(zhuǎn)化 。

模型 --------------- ORM ---------------------- 數(shù)據(jù)表
save() --------------------------------------------- insert
delete() --------------------------------------------- delete
update() --------------------------------------------- update
filter() --------------------------------------------- select

Pycharm運行的一個小技巧(運行文件的時候帶參數(shù))

點擊右上角 Edit configurations
點擊左上角加號+ 選擇Python
在Script path添加要運行的python文件
在Parameters傳參 runserver

在運行這個py文件自動會加上參數(shù) runserver


讓他人也可以訪問自己電腦的私網(wǎng)

python manage.py runserver 0.0.0.0:80
makemigrations

定義模型并遷移

1.在 app/migrations/models.py寫自己定義的一個模型
例如:
class Student(models.Model):
name = models.CharField(max_length=10,unique=True)
age = models.IntegerField(default=18)
gender = models.BooleanField(default=1)

2.在settings中DATABASES
寫連接的數(shù)據(jù)庫信息
例如:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'dj7',
'USER':'root',
'PASSWORD':'123456',
'HOST':'127.0.0.1',
'PORT':3306

}
}

3.在day02 下面的init.py 寫
import pymysql
pymysql.install_as_MySQLdb()

4.在settings.py中 INSTALLED_APPS最后一行加上'app'
5.執(zhí)行python manage.py makemigrations 生成遷移文件,
會在app/migrations生成一個 0001_initial.py

6.python manage.py migrate 進行遷移

7.刷新數(shù)據(jù)庫遷移成功(創(chuàng)建的表自帶主鍵,可以不用創(chuàng)建)

表中新增字段要給默認(rèn)值

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容