1. 程式人生 > 實用技巧 >django基礎之django模型

django基礎之django模型

管理

使用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: 連線資料庫的使用者名稱