什麼是ORM模型
ORM/Object Relational Mapping/對象關係映射
- ORM模式的作用是在關係型數據庫與代碼的業務實體對象之間,建立起一一映射的關係。這會讓開發者不需要再去和複雜的sql語句打交道,只需要操作對象的屬性、方法即可。
- ORM映射:
類 ---- 表
類的實例 ---- 表的記錄
類的屬性 ---- 表的字段 - 映射關係圖:
OMR的優勢
- 可移植性
在Django中,只需要在settings.py中更新數據庫的配置,接着進行遷移數據的操作,就可以完成數據庫的移植。不需要對ORM進行任何修改 - 語法簡單
提供對數據庫的增刪改查語法簡單,可以讓開發者專注於業務邏輯的處理,無需寫複雜的sql語句,提高開發效率 - 自動生成規範的sql語句,可防止sql注入
- 數據庫的遷移工作更方便
ORM的劣勢
- 影響執行效率
- 敲多了ORM,可能會忘記原始的sql語句
安裝mysqlclient
django用來連接mysql的類庫是mysqlclient(不知道什麼版本開始變成這個)
準備工作:創建一個數據庫、表、內容
例子的如下:
安裝mysqlclient
- 方式1:
pip3 install mysqlclient
坑位:error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": https://visualstudio.microsoft.com/downloads
解決:安裝Microsoft visual c++ 14.0,重啓電腦,密碼qbba - 方式2:如果還沒解決(坑較深),就使用whl進行安裝:whl下載地址
注意:cp35代表python3.5的版本,win32代表32位的系統
然後使用pip install xxxx.whl
安裝
接着把安裝好的包複製到所想要使用的項目的venv/Lib/site-packages
目錄下。筆者安裝好的包默認會在這個路徑(和path的設置有關)