現在,你知道什麼是Django。那麼我們將向你展示如何在Windows,Linux(Ubuntu)和Mac OSX上設置和測試Django開發環境—無論你常用哪種操作系統,本文應該都能讓你開始開發Django應用程序。

先備知識: 知道如何打開終端或命令行。了解如何在計算機的操作系統上安裝軟件包。
目標: 在你的計算機操作系統上運行Django(2.0)開發環境。

Django 開發環境概覽

Django 使你輕鬆設置自己的電腦,以便開始開發網絡應用。這部分介紹在開發環境可以取得什麼,並概述了部分設置和配置選項。本文的其餘部分,介紹了在Ubuntu,Mac OS X 和 Windows 上,安裝 Django 開發環境的推薦方法,以及如何測試。

什麼是 Django 開發環境?

開發環境是在本地計算機上安裝 Django,你可以在將 Django 部署到生產環境之前,用於開發和測試 Django 應用程序。

Django 本身提供的主要工具,是一組用於創建和使用 Django 項目的 Python 腳本,以及可用於在你的計算機的瀏覽器上,測試本地(即,你的計算機,而不是外部 Web 服務器)Django 網絡應用程序的簡單開發網路服務器 。

還有其他外部工具, 它們構成了開發環境的一部分, 我們將不再贅述。這些包括 文本編輯器 text editor 或編輯代碼的 IDE,以及像 Git 這樣的源代碼控制管理工具,用於安全地管理不同版本的代碼。我們假設你已經安裝了一個文本編輯器。

什麼是Django設置選項?

Django 如何在安裝和配置方面非常靈活。Django可以:

  • 安裝在不同的操作系統上。
  • 可以一起使用Python 3 和Python 2.
  • 通過Python包索引(PyPi)安裝,和在許多情況下主機的包管理器應用程序。
  • 配置為使用幾個數據庫之一,可能需要單獨安裝和配置。
  • 運行在主系統Python環境中或在單獨的Python虛擬環境中運行。

每個選項都需要略微不同的配置和設置。以下小節解釋了你的一些選擇。對於本文的其餘部分,我們將介紹Django在少見的操作系統上的設置,考量該模塊的其餘部分。

注意: 其他可能的安裝選項在官方Django文檔中介紹。相應文件點擊這裡

支持哪些操作系統?

幾乎任何可以運行Python編程語言的機器可以運行Django 網絡應用程序:Windows,Mac OSX,Linux/Unix,Solaris,僅舉幾例。幾乎任何計算機都應該在開發過程中運行Django所需的性能。

在本文中。我們將提供Windows,Mac OS X 和Linux/Unix的說明。

你應該使用什麼版本的Python?

我們建議您使用最新版本 - 在編寫本文時,這是Python 3.7。

如果需要,可以使用Python 3.4或更高版本(將來的版本中將刪除Python 3.4支持)。

注意: Python 2.7不能與Django 2.0一起使用(Django 1.11.x系列是最後一個支持Python 2.7的系列)。

我們在哪裡下載Django?

有三個地方可以下載Django:

  • Python包含庫(PyPi),使用pip工具.這是獲取最新穩定版本的Django的最佳方式.
  • 使用計算機軟件包管理器中的版本。與操作系統捆綁在一起的Django的分發提供了一種熟悉的安裝機制。請注意,打包版本可能相當舊,只能安裝到系統Python 環境中(可能不是你想要的)。
  • 可以從源代碼獲取並安裝的最新版本的Python。這不是推薦給初學者,但是當你準備好開始貢獻給Django本身的時候,它是必需的。

本文介紹如何從PyPi安裝Django,從獲得最新的穩定版本。

哪個數據庫?

Django支持四個主要數據庫(PostgreSQL,MySQL,Oracle和SQLite),還有一些社區庫,可以為其他流行的SQL和NOSQL數據庫,提供不同級別的支持。我們建議你為生產和開發,選擇相同的數據庫(儘管Django使用其對象關係映射器(ORM)抽像出許多數據庫差異,但是仍然存在可以避免的潛在問題 ).

對於本文(和本模塊的大部分),我們將使用將數據存放在文件中的SQLite數據庫。SQLite旨在用作輕量級數據庫,不能支持高級並發。然而,這確實是唯讀的應用程序的絕佳選擇。

注意 :當你使用標準工具(django-admin)啟動你的網站項目時,Django將默認配置為使用SQLite。用來入門,這是一個很好的選擇,因為它不需要額外的配置和設置。

安裝到整個本機系統還是Python虛擬環境中?

安裝Python3時,您將獲得一個由所有Python3代碼共享的單一全局環境。雖然您可以在環境中,安裝任何您喜歡的Python軟件包,但您一次只能安裝每個軟件包的一個特定版本。

注意: 安裝到全局環境中的Python應用程序可能會相互衝突(即,如果它們依賴於同一程序包的不同版本)。

如果您將Django安裝到默認/全局環境中,那麼您將只能在計算機上,定位一個版本的Django。如果您想要創建新網站(使用最新版本的Django)同時仍然維護依賴舊版本的網站,這可能是一個問題。

因此,經驗豐富的Python / Django開發人員,通常在獨立的Python虛擬環境中,運行Python應用程序。這樣可以在一台計算機上,實現多個不同的Django環境。 Django開發團隊本身建議您使用Python虛擬環境!

本模塊假設您已將Django安裝到虛擬環境中,我們將向您展示如何做。

安裝 Python 3

為了使用Django,你需要安裝Python3.同樣你需要Python包管理工具   — pip3 —用來管理(安裝,更新和刪除)Django和其他Python應用程序使用的Python軟件包/庫。

本書簡要說明如何根據需要檢查什麼版本,並根據需要安裝新版本,適用於Ubuntu Linux 16.04, Mac OS X, and Windows 10。

注意 :根據你的平台,您還可以從操作系統自己的軟件包管理器或其他機制安裝Python / pip。對於大多數平台,您可以從https://www.python.org/downloads/下載所需的安裝文件,並使用適當的平台特定方法進行安裝。

Ubuntu 18.04

Ubuntu Linux 18.04 LTS默認包含Python 3.6.5。您可以通過在bash終端中運行以下命令來確認:

python3 -V
 Python 3.6.5

然而,在默認情況下,為Python 3(包括Django)安裝軟件包的Python包管理工具不可用。可以使用以下方式將pip3安裝在bash終端

sudo apt install python3-pip

macOS X

Mac OS X "El Capitan" 不包括Python 3.你可以通過在bash終端中運行一下命令來確認:

python3 -V
 -bash: python3: command not found

你可以輕鬆從python.org安裝Python 3(以及pip3工具):

  1. 下載所需的安裝程序:
    1. 點擊https://www.python.org/downloads/
    2. 選擇Download Python 3.7.0按鈕(確切的版本號可能不同).
  2. 使用Finder找到文件,然後雙擊包文件。遵循安裝提示。
    (一般能拖拽就拖拽)

你現在可以檢查Pyhon 3來確認成功安裝,如下所示:

python3 -V
 Python 3.7.0

你也可以通過列出可用的軟件包來檢查pip3是否安裝:

pip3 list

Windows 10

windows默認不安裝,但你可以從python.org輕鬆安裝它(以及pip3工具):

  1. 下載所需版本:
    1. 點擊https://www.python.org/downloads/
    2. 選擇Download Python 3.7.0 按鈕(確切的版本號可能不同).
    3. 通過雙擊下載的文件並按照提示安裝Python

你可以通過在命令提示符中輸入以下文本來驗證是否安裝了Python:

py -3 -V 
 Python 3.7.0

默認情況下,Windows安裝程序包含pip3(python包管理器,你可以列出安裝的軟件包):

pip3 list

注意: 安裝程序應設置上述命令工作所需的一切。但是,如果您收到無法找到Python 的消息,則可能忘記將其添加到系統路徑中。您可以通過再次運行安裝程序,選擇“修改”"Modify",然後選中第二頁上標有“將Python添加到環境變量”"Add Python to environment variables"的框來執行此操作。

在Python虛擬環境中使​​用Django

我們將用於創建虛擬環境的庫是 virtualenvwrapper(Linux和macOS X)和 virtualenvwrapper-win (Windows),後者又使用 virtualenv工具。包裝工具為所有平台上的接口管理創建了一致的界面。

安裝虛擬環境軟體

Ubuntu虛擬環境設置

安裝Python和pip之後,你可以安裝 virtualenvwrapper(包括virtualenv)。可在此處找到官方安裝指南,或按照以下說明操作。

使用pip3安裝該工具:

sudo pip3 install virtualenvwrapper

然後將以下行添加到shell啟動文件的末尾(這是主目錄中的隱藏文件名.bashrc)。這些設置了虛擬環境應該存在的位置,開發項目目錄的位置以及使用此軟件包安裝的腳本的位置 :

export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS=' -p /usr/bin/python3 '
export PROJECT_HOME=$HOME/Devel
source /usr/local/bin/virtualenvwrapper.sh

注意: VIRTUALENVWRAPPER_PYTHONVIRTUALENVWRAPPER_VIRTUALENV_ARGS 變量指向Python3的正常安裝位置,source /usr/local/bin/virtualenvwrapper.sh指向virtualenvwrapper.sh腳本的正常位置。如果virtualenv在測試時不起作用,那麼要檢查的一件事是Python和腳本位於預期的位置(然後適當地更改啟動文件)。

您可以使用which virtualenvwrapper.shwhich python3.的命令找到系統的正確位置。

然後在終端中運行以下命令重新加載啟動文件:

source ~/.bashrc

此時您應該看到一堆腳本正在運行,如下所示:

virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/premkproject
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/postmkproject
...
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/preactivate
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/postactivate
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/get_env_details

現在,您可以使用mkvirtualenv命令創建新的虛擬環境。

macOS X 虛擬環境設置

在 macOS X上設置 virtualenvwrapper 與在 Ubuntu上幾乎完全相同(同樣,您可以按照官方安裝指南或下面的說明進行操作。

使用 pip 安裝 virtualenvwrapper(並捆綁 virtualenv),如圖所示。

sudo pip3 install virtualenvwrapper

然後將以下幾行添加到 shell 啟動文件的末尾。

export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export PROJECT_HOME=$HOME/Devel
source /usr/local/bin/virtualenvwrapper.sh

注意: VIRTUALENVWRAPPER_PYTHON變量指向Python3的正常安裝位置,source /usr/local/bin/virtualenvwrapper.sh指向virtualenvwrapper.sh腳本的正常位置。如果virtualenv在測試時不起作用,那麼要檢查的一件事,是Python和腳本位於預期的位置(然後適當地更改啟動文件)。

例如,對macOS進行的一次安裝測試,最終在啟動文件中需要以下幾行:

export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/Library/Frameworks/Python.framework/Versions/3.7/bin/python3
export PROJECT_HOME=$HOME/Devel
source /Library/Frameworks/Python.framework/Versions/3.7/bin/virtualenvwrapper.sh

您可以使用which virtualenvwrapper.shwhich python3的命令找到系統的正確位置。

這幾行與Ubuntu相同,但啟動文件是主目錄中、名稱不同的隱藏文件.bash_profile

注意: 如果在查找程序中找不到要編輯的.bash-profile,也可以使用nano在終端中打開它。

命令看起來像這樣:

cd ~  # Navigate to my home directory
ls -la #List the content of the directory. YOu should see .bash_profile
nano .bash_profile # Open the file in the nano text editor, within the terminal
# Scroll to the end of the file, and copy in the lines above
# Use Ctrl+X to exit nano, Choose Y to save the file.

 

然後通過在終端中,進行以下調用,來重新加載啟動文件:

source ~/.bash_profile

此時,您可能會看到一堆腳本正在運行(與Ubuntu安裝相同的腳本)。您現在應該能夠使用mkvirtualenv命令,創建新的虛擬環境。

Windows 10 虛擬環境設置

安裝virtualenvwrapper-win比設置virtualenvwrapper更簡單,因為您不需要配置工具存放虛擬環境信息的位置(有默認值)。您需要做的就是,在命令提示符中運行以下命令:

pip3 install virtualenvwrapper-win

現在,您可以使用mkvirtualenv命令創建新的虛擬環境

創建虛擬環境

一旦你安裝了virtualenvwrapper或virtualenvwrapper-win,那麼在所有平台上使用虛擬環境都非常相似。

現在,您可以使用mkvirtualenv命令創建新的虛擬環境。當此命令運行時,您將看到正在設置的環境(您看到的是略微特定​​於平台的)。當命令完成時,新的虛擬環境,將處於活動狀態 - 您可以看到這一點,因為提示的開頭,將是括號中環境的名稱(如下所示)。

$ mkvirtualenv my_django_environment

Running virtualenv with interpreter /usr/bin/python3
...
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/t_env7/bin/get_env_details
(my_django_environment) ubuntu@ubuntu:~$

現在,您可以在虛擬環境中,安裝Django,並開始開發。

注意: 從本文開始(實際上是本系列教學),請假設任何命令都在Python虛擬環境中運行,就像我們在上面設置的那樣。

使用虛擬環境

您應該知道其他一些有用的命令(工具文檔中有更多,但這些是您經常使用的命令):

  • deactivate — 退出當前的Python虛擬環境
  • workon — 列出可用的虛擬環境
  • workon name_of_environment — 激活指定的Python虛擬環境
  • rmvirtualenv name_of_environment — 刪除指定的環境

安裝 Django

一旦你創建了一個虛擬環境,並調用了workon來輸入它,就可以使用pip3來安裝Django。

pip3 install django

您可以通過運行以下命令來測試Django是否安裝(這只是測試Python可以找到Django模塊):

# Linux/macOS X
python3 -m django --version
 2.0

# Windows
py -3 -m django --version 
 2.0

注意: 如果上面的Windows命令沒有顯示django模塊,請嘗試:

py -m django --version
在Windows中,Python 3腳本通過在命令前面加上py -3來啟動,儘管這可能會因具體安裝而異。如果遇到任何命令問題,請嘗試省略-3修飾符。在Linux / macOS X中,命令是python3

重要提示:本教程的其餘部分,使用Linux命令來調用Python 3(python3)。如果您在Windows上工作,只需將此前綴替換為: py -3

測試你的安裝

上面的測試可以工作,但它不是很有趣。一個更有趣的測試是創建一個骨架項目並看到它工作。要做到這一點,先在你的命令提示符/終端導航到你想存儲你Django應用程序的位置。為您的測試站點創建一個文件夾並瀏覽它。

mkdir django_test
cd django_test

然後,您可以使用django-admin工具創建一個名為“ mytestsite ”的新骨架站點,如圖所示。創建網站後,您可以導航到文件夾,您將在其中找到管理項目的主要腳本,名為manage.py

django-admin startproject mytestsite
cd mytestsite

我們可以使用manage.pyrunserver 命令,從此文件夾內運行開發Web服務器,如圖所示。

$ python3 manage.py runserver 
Performing system checks...

System check identified no issues (0 silenced).

You have 14 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.

December 29, 2017 - 03:03:47
Django version 2.0, using settings 'mytestsite.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

注意: 以上命令顯示Linux / macOS X命令。此時您可以忽略有關“14個未應用的遷移”的警告!("14 unapplied migration(s)" )

一旦服務器運行,您可以通過導航到本地Web瀏覽器上的以下URL來查看該站點:http://127.0.0.1:8000/你應該看到一個如下所示的網站:

Django Skeleton App Homepage

總結Summary

您現在已在計算機上啟動並運行Django開發環境。

在測試部分,您還簡要了解了,我們如何使用django-admin startproject,創建一個新的Django網站,並使用開發Web服務器(python3 manage.py runserver)在瀏覽器中運行它。在下一篇文章中,我們將擴展此過程,構建一個簡單、但完整的Web應用程序。

參閱

本教程連結

 

文件標籤與貢獻者

此頁面的貢獻者: edgar-chen
最近更新: edgar-chen,