架設Django 開發環境

現在,你知道什麼是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按鈕(確切的版本號可能不同).
  • 使用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應用程序。

    參閱

    本教程連結

     

    發表評論
    所有評論
    還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
    相關文章