談談Python之Django搭建企業級官網(第一篇)

轉載請註明來源地址和原做者(CFishHome)python

前沿

經過網易雲課堂開設的Django搭建企業級官網的學習,特此留下學習筆記記錄學習遇到的困難和心得。這也是一個長期的學習過程,相信一個好的產品都須要耐心和鑽研。本人有個小習慣,不太喜歡直接複製粘貼別人的知識筆記,喜歡本身測試別人的筆記後再本身總結,因此有不便之處請見諒。django

虛擬環境

一般狀況下,咱們安裝好Python3.x或者Python2.x,都會擁有對應的一個Python環境(也稱之爲系統級的Python環境,也就是有Scripts文件夾的那個目錄環境),那麼當咱們須要使用第三方包時,在命令行界面執行pip install xx的方式進行安裝,這樣安裝會將那個包安裝到你的系統級別的Python環境的某個文件夾中。這樣的方式會爲之後形成什麼樣的影響呢?假如咱們一直是使用Django1.10寫網站,忽然領導安排咱們去維護一個使用Django0.9開發的網站,可是因爲Django1.10再也不兼容Django0.9的一些語法了,而咱們Python環境只有Django1.10,因此維護起來着實不易,也不可能同一環境同時安裝兩個版本的Django,多少會有兼容衝突問題。正所謂一山(系統級Python環境)容不得二虎(兩個版本的Django),因此咱們只要額外創造兩座山(兩個虛擬環境),分別容一隻虎不就解決問題了。因此,用兩個虛擬環境分別安裝兩個不一樣的Django版原本適配基於不一樣Django版本開發出來的項目。windows

下小節重點介紹兩種建立虛擬環境的軟件工具,分別是virtualenv和virtualenvwrapper,前者是少用的軟件工具(存在兩點缺陷,下小節會有總結),後者是經常使用的軟件工具(徹底解決了virtualenv的兩點缺陷,方便操做虛擬環境)。因此,強烈建議使用virtualenvwrapper來建立虛擬環境。app

virtualenv軟件工具

安裝virtualenv

virtualenv是用來建立虛擬環境的軟件工具,咱們能夠經過pip或者pip3來安裝,以下命令:ide

pip install virtualenv
pip3 install virtualenv

從上面咱們能夠看出pip和pip3命令的不一樣,若是電腦只安裝一個Python版本(py2或py3),那麼執行pip install virtualenv就會智能安裝到對應這個系統級別的python環境種。但如果電腦同時安裝了兩個python版本(py2和py3),那麼就要區分pip(執行的話安裝到py2環境中)和pip3(執行的話安裝到py3環境中)命令的使用。工具

利用virtualenv建立虛擬環境

打開CMD,在任意目錄下執行如下命令(注意,只有安裝virtualenv成功才能執行下面的命令),就建立虛擬環境了:學習

virtualenv [虛擬環境的名字]

以下圖:測試

談談Python之Django搭建企業級官網(第一篇)
建立虛擬環境完成後有兩個須要咱們注意的問題:
1.這個虛擬環境是採用哪一個做爲它的解釋器?網站

咱們都知道無論安裝Python3.x仍是Python2.x,在系統環境變量中都會自動添加一個對應一個Python版本的Scripts文件夾路徑。而虛擬環境至關於小型的系統級別的Python環境,因此虛擬環境也須要解釋器進行編譯運行咱們建立的項目。若是你當前的Python3/Scripts的查找路徑在Python2/Scripts的前面,那麼將會使用python3做爲這個虛擬環境的解釋器,不然將會使用python2做爲這個虛擬環境的解釋器。若是隻有一個版本,那麼天然使用這個版本做爲虛擬環境的解釋器了
2.咱們建立的虛擬環境在哪一個目錄能夠找到?操作系統

前面咱們是在任意目錄下執行建立虛擬環境的,成功建立會生成指定名字的目錄,這個目錄就是虛擬環境,因此虛擬環境在終端當前目錄(個人是C:\Users\Administrator\Desktop)下就能夠找到。以下圖所示:

談談Python之Django搭建企業級官網(第一篇)

進入虛擬環境

虛擬環境建立成功後,若是咱們要想在這個虛擬環境中安裝第三方包、卸載第三方包或者開發項目,前提是必須先進入虛擬環境,例如:若是沒進入這個虛擬環境,而後執行pip安裝命令,那麼虛擬環境做用就失效了,由於默認又會將第三方包安裝到系統級別的Python環境當中,這尤爲須要注意!
進入虛擬環境,在不一樣的操做系統中有不一樣的方式,通常分爲兩種:

  1. Windows操做系統

若是你的開發平臺在Windows操做系統,首先進入到虛擬環境的Scripts文件夾,而後執行activate激活命令進入虛擬環境。以下圖所示:

談談Python之Django搭建企業級官網(第一篇)

  1. *nix操做系統

若是你的開發平臺在*nix操做系統,那麼與windows系統執行activate激活命令目錄不同,經過執行如下命令進入虛擬環境:

source /path/to/virtualenv/bin/activate

退出虛擬環境

既然能進入虛擬環境,天然就能夠退出虛擬環境,執行下面命令就能夠完成:

deactivate

建立虛擬環境同時指定Python解釋器

前面說過了,若是一臺電腦有兩個Python版本,那麼做爲虛擬環境的解釋器就會依據系統環境變量Scripts路徑的先後位置來決定,若是一臺電腦只有一個Python版本,那麼虛擬環境默認就使用這個Python解釋器。然而,實際中,依靠環境變量路徑先後順序來決定解釋器,這種限制並不靈活。因此提供了-p參數來靈活指定具體的Python解釋器:

virtualenv -p C:\Python36\python.exe [虛擬環境名稱]

對於virtualenv的小總結

  1. 安裝virtualenv
    pip install virtualenv
    pip3 install virtualenv
  2. 建立虛擬環境
    virtualenv [虛擬環境的名字]
    virtualenv -p C:\Python36\python.exe [虛擬環境名稱]
  3. 進入虛擬環境
    在相應操做系統平臺下,執行activate激活命令進入虛擬環境。

  4. 退出虛擬環境
    deactivate

    評析virtualenv的缺陷

    上面virtualenv軟件包有兩點缺陷:
    1.每次建立虛擬環境都在終端當前目錄下建立,若是跑到多個目錄下建立虛擬環境,那麼會致使多個目錄都含有虛擬環境,那麼就變成很差管理了。

  5. 當進入某個虛擬環境時,都必須進入Scripts目錄下執行actiate命令才能激活虛擬環境,這十分不便捷。

virtualenvwrapper軟件工具

virtualenvwrapper這個軟件包可讓咱們管理虛擬環境變得更加簡單,完美的解決了virtualenv留下的兩個缺陷:跑到某個目錄下經過virtualenv來建立虛擬環境,而且激活的時候須要跑到具體的目錄下去激活。

安裝vritualenvwrapper

  1. *nix平臺下
pip install virtualenvwrapper
  1. windows平臺下
pip install virtualenvwrapper-win

Tips:在實際開發中,咱們不須要先安裝virtualenv再安裝virtualenvwrapper
,virtualenvwrapper軟件包其實已經包含了virtualenv。因此在實際應
用中,咱們只須要安裝virtualenvwrapper便可,由於
virtualenvwraper是基於virtualenv擴展出來的。

virtualenvwrapper基本使用方法

1.建立虛擬環境

(1)在任意目錄下執行下面這條命令:

mkvirtualenv my_env

建立成功後,它會在你當前用戶(個人是C:\Users\Administrator\)路徑下建立一個Envs文件夾,而後將這個my_env虛擬環境安裝到這個目錄下,若是你電腦種安裝了python2和python3,而且兩個版本都安裝了virtualenvwrapper,那麼將會使用環境變量中第一個出現的Python版原本做爲這個虛擬環境的Python解釋器。以下圖所示:

談談Python之Django搭建企業級官網(第一篇)
上圖咱們也能夠看出,當建立成功後,默認會自動進入該虛擬環境中,咱們執行deactivate命令退出當前虛擬環境。

(2)在使用 mkvirtualenv的時候,咱們也還能夠指定--python的參數來指定具體的 python解釋器路徑:

mkvirtualenv --python==C:\Python36\python.exe hy_env

2.切換到指定虛擬環境

workon my_env

以下圖所示:
談談Python之Django搭建企業級官網(第一篇)

3.退出當前虛擬環境

deactivate

4.刪除指定虛擬環境
刪除虛擬環境其實就是刪除my_env目錄。

rmvirtualenv my_env

以下圖所示:
從下圖能夠看出Envs文件夾下已經不存在my_env虛擬環境了。
談談Python之Django搭建企業級官網(第一篇)

5.列出全部虛擬環境

lsvirtualenv

以下圖所示:
談談Python之Django搭建企業級官網(第一篇)

6.進入到虛擬環境所在的目錄

cdvirtualenv

因爲測試需求,把my_env刪了,下圖列舉進入django-env虛擬環境爲例:

談談Python之Django搭建企業級官網(第一篇)

修改mkvirtualenv的默認路徑

前面學習mkvirtualenv建立虛擬環境的時候,說過它會默認在當前用戶路徑下建立一個Envs目錄,而後把虛擬環境安裝到這個Envs目錄下。那麼如何修改這個默認路徑呢?修改默認路徑的好處是什麼?仔細斟酌,假如咱們本身新建一個專屬於本身的目錄,那麼把虛擬環境都放在本身建立目錄,那麼管理起來會十分方便,並且仍是本身喜歡的目錄名(●'◡'●)。如下是修改默認路徑的方法:

在個人電腦->右鍵->屬性->高級系統設置->環境變量->系統變量 中添加一個參數 WORKON_HOME ,將這個
參數的值設置爲你須要的路徑。

以下圖所示:

談談Python之Django搭建企業級官網(第一篇)

配置好新的WORKON_HOME路徑後,而後關掉CMD窗口,從新啓動一個CMD,接着咱們新建立一個虛擬環境來測試下成不成功,執行mkvirtualenv new_env命令,結果以下圖:

談談Python之Django搭建企業級官網(第一篇)
好了,修改默認目錄是成功的。注意,當修改了環境變量必須重啓CMD命令行窗口才會生效!!!

相關文章
相關標籤/搜索