django基礎之django模型
阿新 • • 發佈:2020-08-03
管理
使用Django開發的應用也可以在settings.py中對資料庫進行配置。這部分和應用邏輯是解耦的
配置
在Django中配置資料庫連線是非常簡單的。對於使用django-admin工具建立的專案, settings.py檔案中已經有了DATABASES這個變數, 如果沒有的話, 可以直接建立這個變數, 這個變數的型別是一個字典。示例程式碼如下:
# 這裡是settings.py的內容 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 配置引擎 'OPTIONS': { 'read_default_file': '/path/to/my.cnf', # 配置檔案路徑 }, 'USER': 'featherwit', # 資料庫使用者名稱 'PASSWORD': 'mysql', # 資料庫密碼 'HOST': '127.0.0.1', # 資料庫服務監聽IP 'POST': 3306, # 資料庫服務監聽埠 'NAME': 'dadta' # 資料庫名 } } # 這裡是/path/to/my.cnf檔案的內容[client] database = data user = featherwit password = mysql default-character-set = utf8 host = 127.0.0.1 port = 3306
連線配置有一定的順序, 如果配置中定義了OPTIONS, 則OPTIONS中定義的連線資訊會被優先使用; 如果沒有定義OPTIONS, 則配置中的USER、NAME、PASSWORD、HOST、PORT將會被用到
DATABASES中定義的資料庫的數量不受限制, 但必須定義一個名為default的資料庫。資料庫支援的配置如下:
- ENGINE: 這個配置定義資料庫後端。Django自帶後端支援PostgreSQL、MysQL、SQLite、Oracle
- HOST: 指定要聯結的資料庫主機地址。這是一個字串, 若為空字串, 則摩恩主機地址為localhost
- NAME: 資料庫名
- CONN_MAX_AGE: 一個連線的生命週期, 單位為秒, 該欄位設定為0, 代表在請求結束的時候斷開連線
- OPTIONS: 預設是空字典, 用於配置連線到資料庫的額外引數
- PASSWORD: 連線資料庫的密碼, 預設是空字串
- PORT: 資料庫的埠號, 是一個字串
- USER: 連線資料庫的使用者名稱