用Python做Web開發,Django框架是個非常好的起點。如何從零開始,配置好Django開發環境呢?本文帶你一步步無痛上手。
概念
最近有個詞兒很流行,叫做“全?!?full stack)。各大IT培訓機構幾乎都在宣傳這一概念。告訴你只需要交1XXXX元,就可以在XX天之內把自己變成一個“全棧工程師”。有了這個稱號可不得了,收入馬上可以上升若干個量級,從此走向通往人生巔峰的坦途……
醒醒,沒那好事兒。
靜下心來琢磨一下,XX天之內就可以學會的東西,門檻高嗎?這么多人都能學會的東西,還有競爭優勢嗎?
所謂“全棧”,無非是同時掌握Web開發中的前端和后端開發技術而已。正是因為開發工具越來越好用,技術門檻越來越低,所以從前必須分工才能完成的工作,現在個人就能獨立完成。
這種事兒不稀奇。從前作家寫稿子都用打字機甚至手寫,排版這些事兒都得有專業人士來完成??扇缃衲兀磕銓憘€公眾號,從起草到發布一個人就可以搞定。如果你搞不定,歡迎往前翻翻,看我介紹Markdown的那幾篇文章。
但是門檻低也是好事兒。這意味著你也可以很容易掌握Web開發技術。雖然這不能保證你百萬年薪,但是可以讓你掌握更豐富的工具,使得你可以擁有更多的可能性。
篇幅有限,本文只說后端的事兒。
所謂后端,就是服務器端。前端呢?就是用戶的瀏覽器了。瀏覽器運行在普通的個人電腦上,能干的事情相對有限。大規模的計算如果都需要在瀏覽器中完成,那么效率必然很低。而且,用戶信息存儲這樣的工作,也需要放到服務器加密集中管理,才能保證安全。
后端開發說白了,就是架設一個服務應用。用戶通過瀏覽器訪問你的這個服務,你根據用戶提供的輸入進行處理,然后把輸出的結果反饋給用戶的瀏覽器。
聽起來很簡單,對吧?沒錯,這就是標準的馮諾依曼體系結構。
后端開發的技術門檻是如何降低的呢?就是出現了越來越多的開發框架,使得開發者避免了重復發明輪子。你可以把開發框架想象成模具。只需要根據具體需求對模具調整加工,就可以立即生產出符合自己要求的服務應用來。
痛點
本文介紹的開發框架,是基于Python語言的Django,它簡單、便捷而強大。
你可以上網搜索到一個叫做"Django Girls Tutorial"的教程。顧名思義,這是專門教女孩兒如何用Django的。
這……是不是性別歧視???
?不是。因為教育者發現有的女孩子容易受到社會偏見的影響,把IT技術理所當然想象成男孩子才能做的事兒,所以連碰都不去碰,錯失了很多接受教育和選擇就業的機會。于是他們發起一項運動,通過一系列培訓,改變部分女孩子們的這種錯誤認知。
?Django是個非常好的出發點。它足夠簡單,可以讓初學者快速上手,并且做出實用的網站,從而建立對IT學習的信心。
你需要在數據庫存儲用戶信息,可是不會SQL語言?沒關系,可以利用框架提供的通用方法操作數據庫。
你需要用戶提交表單,可是懶得自己寫HTML?不要緊,只需要兩三行代碼框架就能替你完成。
聽起來是不是很神奇?是不是打算立即上手試一試?
別急。
如果你沒有好的教程指引,僅是搭建Django開發環境這個過程就會很痛苦。太多的教程都沒有搞清楚教學對象的需求。教程作者們總是在可能出現問題的環節輕描淡寫,導致初學者很容易踏進坑里,然后掙扎半天爬不出來,挫折無助直至放棄。
本教程的特點,就是用清晰的步驟幫助初學者繞開可能的坑,一步步完成開發環境的搭建和試運行,從而建立信心和積累學習實踐的成就感。
需要說明的是,因為本人使用的是蘋果電腦,本文中演示的都是macOS系統下的步驟。不過我們用到的軟件基本上都是跨平臺的。如果你使用的是Windows或者Linux,可以選擇適合自己操作系統的版本。軟件界面環境和操作步驟大同小異。
我們開始吧。
套件
為了最大可能地避免安裝軟件包帶來的麻煩,我建議你安裝Anaconda套件。
?如果你只是需要進行Web開發,安裝Anaconda確實有些大炮轟蚊子的感覺。因為它會一股腦給你安裝上很多其他好用(但你可能暫時用不上)的軟件包裹。
?但是對于現在的計算機來說,這點兒空間占用不算什么大事兒。而且Python作為一種通用開發語言,在你工作生活中許多環節都有可能用得上。Anaconda的軟件包管理機制非常便捷易用。一次安裝后,你可以長時間享受它帶來的各種便利。因此安裝該套件利大于弊。
?請到這個網址 下載最新版的Anaconda。下拉頁面,找到下載位置。根據你目前使用的系統,網站會自動推薦給你適合的版本下載。
請注意,下載頁面區隔出左右兩欄,分別對應套件不同的Python語言版本。左側是3.6版,右側是2.7版。千萬不要根據常識,判定3.X版本一定優于2.X版本。不是這樣的。請根據你準備使用的具體開發環境來進行選擇。如果你是初學者,建議你點擊右側的綠色下載按鈕,下載2.7版本。
?后文你會看到,對于咱們做Web開發來說,這里套件Python的版本其實沒有太大關系。因為在具體開發語言版本,在配置的時候,你完全可以重新自由選擇。
?下載下來的文件是個以pkg作為擴展名的包裹,雙擊它,然后根據提示一步步安裝就好了。全中文界面,非常友好。
安裝完了?
?現在你的系統里面就有了全套的Python生態環境了。你完全可以在命令行用pip安裝Django,然后在Sublime Text, Atom,甚至是Anaconda自帶的編輯器里開始編寫Python程序了。
?但是我們不僅需要把安裝配置變得簡單,還要在未來的實際開發中享受更完善便捷的功能。因此,我們需要安裝一個集成開發環境(Integrated Development Environment, IDE)。
?我們選擇的集成開發環境,是PyCharm。
環境
PyCharm是Python開發的利器。它把各種臟活累活默默在后臺一手承擔,把開發者解放出來。
PyCharm支持macOS,Windows和Linux。一旦你習慣了它的使用方式,那么即使工作環境遷移到其他操作系統,也不會受到很大影響。
你需要到這個地址下載最新版的PyCharm。
下載之后,雙擊dmg文件。出現如下提示。
安裝無非就是把左側的可執行文件圖標拖拽到右側的“應用”(Applications)目錄圖標上。
等進度條到頭,安裝就算完成了。然后你可以在應用目錄下找到PyCharm。雙擊執行即可。首次執行的時候,可能會彈出以下窗口。
這是系統的默認安全提示。別理他,繼續打開就好。
當你看到如下圖所示的啟動界面的時候,安裝就成功了。
集成開發環境安裝好了。它有什么作用呢?
?別著急。下面我們就要展示如何用它來方便地安裝Django,并且嘗試運行你自己的第一個網站應用了。
安裝
PyCharm下安裝并且配置Django開發環境,真的如同搭積木一樣簡單。
首先,我們在開始界面下,執行新建項目(Create New Project)。
然后你會看到如下圖所示的界面。
左側選擇Django,右側的Location填寫你打算保存項目文件的目錄位置。
目錄命名時一定要注意,只能包含字母、數字和下劃線。出現其他字符會報錯。
我們把其中錯誤的連接符改成下劃線,就可以順利通過檢驗了。
下面我們要進行一項非常重要的工作——指定開發用Python版本了。請點擊Interpreter這一行最右側的配置按鈕。你會看見以下4個選項:
請選擇第4個,Create Conda Env。PyCharm將通知Anaconda:“嘿,老兄,為了實驗Django編程,我需要你提供一個虛擬軟件環境!”
?這里解釋一下什么叫做虛擬軟件環境。我們在開發的過程中,使用的Python版本、調用的軟件包版本可能都是不一樣的。例如對項目A,你可能用的是Python 3.6 + Django 1.10,對于項目B,你用的可能是Python 2.7 + Django 1.11。這就很困擾了。因為你可能聽過一句諺語“一個人不能同時去追兩只兔子”。
?對,如果你把開發環境設定為唯一的,那你就需要先裝Python 3.6, Django 1.10,測試項目A,測試通過后你刪了Python 3.6和Django 1.10,安裝Python 2.7,Django 1.11,然后測試項目B。這時你突然發現項目A可能需要改寫,加入新的功能,于是你又刪除了Python 2.7和Django 1.11……
?折騰不折騰???
?好的軟件開發人員,是最不喜歡在這種無謂的細節上瞎耽誤工夫的。所以他們做出了虛擬環境。你可以在虛擬環境1里面安裝Python 3.6和Django 1.10,專門用于開發項目A。虛擬環境2安裝Python 2.7和Django 1.11,用于開發項目B。兩個虛擬開發環境雖然都安裝在了同一臺電腦上,但是相互獨立,互不干擾。你可以在它們中間隨時方便切換。
?強大吧?
?PyCharm充分利用了虛擬環境的強大特點。點擊Create Conda Env后,軟件彈出以下的對話框。
你需要給新建的虛擬開發環境起個名字。就叫django_py27吧。好記!
?然后你需要選擇一下Python語言版本,我們點開下拉列表看看。
可以看到,各種Python語言的版本一應俱全,任君挑選。
?我們確認了選擇Python 2.7版本之后,PyCharm就開始為我們搭建指定虛擬環境了。
這個過程可能需要等待一會兒。虛擬環境搭建完畢后,你可以看到Interpreter右側的路徑變成了我們設定的虛擬環境。
點擊右下角的Create,讓PyCharm自己幫我們安裝Django吧。
PyCharm不僅安裝了Django,并且在我們指定的路徑下搭好了基礎框架結構。如下圖所示:
下面該干什么呢?我們來嘗試一下運行這個初始框架吧。
運行
在PyCharm頂部的菜單欄里,選擇Run,會出現以下功能列表:
我們就選擇其中的第一個,Run 'django_course'即可。
?如果一切正常,你會在PyCharm底部窗口中看到如下提示:
點擊其中的藍色鏈接,瀏覽器會開啟,并且訪問本地已運行的Django App服務。
你會看到如下頁面:
正如頁面中提示的那樣——“It worked!”
祝賀你,已經成功安裝和配置了全套的Django開發環境,而且測試運行了自己的第一個Web應用了。
討論
除了本文介紹的方法外,你還知道哪些其他的Django開發環境便捷搭建方式?你在學習Django的過程中,有什么經驗和教訓?歡迎留言分享給大家,我們一起交流討論。
如果你對我的文章感興趣,歡迎點贊,并且微信關注和置頂我的公眾號“玉樹芝蘭”(nkwangshuyi)。
如果本文可能對你身邊的親友有幫助,也歡迎你把本文通過微博或朋友圈分享給他們。讓他們一起參與到我們的討論中來。