django的orm主要有兩個功能:操作表、運算元據行
操作表:建立表、修改表(表的結構和資料型別)、刪除表建立資料庫運算元據行:增刪改查
修改settings.py的資料庫配置,填寫資料庫的相關資訊
引入pymysql來替換mysql_db
django的orm不能直接連線資料庫,需要借助pymysql等第三方的工具來實現資料庫連線。在django中,預設連線的資料庫是sqlite(檔案型),當我們想使用mysql資料庫時,需要對settings.py的資料庫配置進行修改:
修改為:
databases =
}
填寫好資料庫的相關資訊之後,控制台會報錯,我們還需要在專案同名目錄的__init__.py(與settings.py同級)進行配置:
這樣pymysql就會把內部的mysql_db替換了
django用orm建立資料表是通過類來實現的,通常寫在應用的models.py檔案裡
這句可以省略,django會自動建立乙個自增的id列,並且是主鍵
nid = models.bigautofield(primary_key=
true
)
當我們簡單建立乙個表時,如果想要生成,則需要進行註冊,同樣是在settings.py檔案中進行註冊:
完成註冊之後還需要執行兩個命令【牢記】才真正才成了表的建立:
執行成功之後,我們就可以在資料庫中看到我們建立的表:
一對多:通常把外來鍵寫在多
的一方
執行命令之後,重新整理資料庫表,得到的userinfo如圖所示:
當我們需要修改某個字段或者給表增加列時,要注意控制台的提示資訊,並且需要執行上面提到的兩個命令,它會生成記錄,每次對資料表進行操作時都會對比上一次的記錄來生成新的sql執行語句,輕易不要刪除:# 增刪改查
# 增models.usergroup.objects.create(title=
'銷售部'
) models.usergroup.objects.create(title=
'人事部'
) models.userinfo.objects.create(username=
'root'
, password=
'123456'
, age=
18, ug_id=1)
# 查 group_list = models.usergroup.objects.
all(
)# print(group_list) # queryset型別,可看做列表
# for group in group_list:
# print(group.id, group.title) # 獲取每個group的id和title
# 條件查詢
models.usergroup.objects.
filter(id
=1)# 相當於where id=1
models.usergroup.objects.
filter
(id__gt=1)
# 相當於where id>1
models.usergroup.objects.
filter
(id__lt=1)
# 相當於where id<1
# 刪 models.usergroup.objects.
filter(id
=2).delete(
)# 改
models.usergroup.objects.
filter(id
=1).update(title=
'公關部'
)return render(request,
'index.html',)
待續…
九 django學習筆記四
這篇筆記主要是關於django模組的操作 1.1配置 在工程中建立模板目錄templates,在settings.py配置檔案中修改templates配置項的dirs值 templates 1.2定義模組 在templates目錄中新建乙個模板檔案,如index.html en utf 8 titl...
Django框架學習筆記 七
在開發乙個web專案時,會出現多個頁面有公共頭部 導航欄等情況,在每個頁面中重複寫會導致後期修改非常麻煩,而且還可能會出現一些錯誤,在django框架中,提供了模板引擎。我們會定義乙個母版,用它來存放所有頁面的公用部分,如 母版layout.html 通常會在母版裡面定義三個區塊block,分別給它...
Django框架學習
執行開發web伺服器命令 python manage.py runserver 可加ip跟埠127.0.0.1 8000 模板設定 templates 鏈結mysql設定 databases import pymysql pymysql.install as mysqldb urlpatterns ...