1. 程式人生 > >python3使用Django框架+mysql資料庫

python3使用Django框架+mysql資料庫

 

首先安裝虛擬環境,命令如下:

sudo pip3 install virtualenv #安裝虛擬環境

接下來還要安裝虛擬環境擴充套件包,命令如下:

sudo pip3 install virtualenvwrapper

安裝虛擬環境包裝器的目的是使用更加簡單的命令來管理虛擬環境。

修改使用者家目錄下的配置檔案.bashrc,新增如下內容:

export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

使用source .bashrc命令使配置檔案生效。

mkvirtualenv -p python3 虛擬環境名稱
例:
mkvirtualenv -p python3 dj18_py3

workon dj18_py3進入虛擬環境工作

 

安裝django包

後面要學習使用django,我們使用的是django1.8.2的版本,這是一個穩定性高、使用廣、文件多的版本,注意,如果前面刪除過虛擬環境py_django,則需要先建立一下,否則直接安裝django包即可。

mkvirtualenv py_django

然後安裝django1.8.2的包,命令如下:

pip install django==1.8.2

安裝django包

看到上面這個內容,說明django環境就安裝成功了。

建立專案的命令如下:

django-admin startproject 專案名稱
例:
django-admin startproject test2

 

  • manage.py是專案管理檔案,通過它管理專案。
  • 與專案同名的目錄,此處為test1。
  • _init_.py是一個空檔案,作用是這個目錄test1可以被當作包使用。
  • settings.py是專案的整體配置檔案。
  • urls.py是專案的URL配置檔案。
  • wsgi.py是專案與WSGI相容的Web伺服器入口,詳細內容會在佈署中講到。

建立應用

使用一個應用開發一個業務模組,此處建立應用名稱為booktest,完成圖書-英雄的資訊維護。

建立應用的命令如下:

python manage.py startapp booktest

 

 

  • _init.py_是一個空檔案,表示當前目錄booktest可以當作一個python包使用。
  • tests.py檔案用於開發測試用例,在實際開發中會有專門的測試人員,這個事情不需要我們來做。
  • models.py檔案跟資料庫操作相關。
  • views.py檔案跟接收瀏覽器請求,進行處理,返回頁面相關。
  • admin.py檔案跟網站的後臺管理相關。
  • migrations資料夾之後給大家介紹。

安裝應用

應用建立成功後,需要安裝才可以使用,也就是建立應用和專案之間的關聯,在test1/settings.py中INSTALLED_APPS下新增應用的名稱就可以完成安裝。

初始專案的INSTALLED_APPS如下圖:

 

 

 

 

 配置mysql資料庫:

DATABASES = {
    'default': {
        # 'ENGINE': 'django.db.backends.sqlite3',
        'ENGINE': 'django.db.backends.mysql',
        # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3')
        'NAME': 'bj18',#使用資料庫的名字
        'USER':'root',# 連結mysql的使用者名稱
        'PASSWORD':'mysql',#使用者對應的密碼
        'HOST':'localhost',# 指定mysql資料庫所在電腦的IP
        'PORT':3306,#埠號
    }
}

開發伺服器

在開發階段,為了能夠快速預覽到開發的效果,django提供了一個純python編寫的輕量級web伺服器,僅在開發階段使用。

執行伺服器命令如下:

python manage.py runserver ip:埠
例:
python manage.py runserver

可以不寫IP和埠,預設IP是127.0.0.1,預設埠為8000

啟動服務會報一個錯誤沒有安裝mysqldb模組:

 

pip install pymysql安裝mysql模組:

配置應用pymysql

重新啟動服務:

這樣就成功啟動。

瀏覽器測試:

 

成功了!