Pixabay License
在 Python 中,有很多款 Web 架構,如 Django、Flask、Bottle等,其中 ,Django 是目前使用人數最多的一個架構。
簡單了解下這三個架構
Django
Python 下有很多Web架構,Django 是Python中最具代表性的一個Web架構,許多成功的網站都是基于 Django 開發,如 eBay、craigslist、washingtonpost等網站。
目前,Django 在 Python 界是最流行的 Web 架構,Django整體基于MVC 架構模式,是一個進階的 Python Web 架構,快速開發和簡潔實用的設計,可以解決大部分 Web 開發中的麻煩,是以您可以專注于編寫應用程式而無需重新發明輪子,而且它還是免費和開源的。
Django 安全嗎?
安全是是 Web 應用程式開發中重要的主題,在 Django 中,提供了多種保護工具和安全機制。
如跨站點請求僞造保護、點選劫持保護、加密簽名、安全中間件等,保障一個 Web 應用部署完成後再生産環境中的安全。
Django 也還有其它特色功能,如表單,提供了豐富的表單 API 接口,可以在Pythog 中輕松地建立和應用表單;國際化,Django 提供了一個強大的國際化和本地化的架構, 以幫助您在多語言和世界各地區進行應用程式的開發。地理架構GeoDjango 等。
Flask
Flask 是一個使用 Python 編寫的輕量級 Web 應用架構。它由 Armin Ronacher開發,他上司一個名為 Pocco 的國際 Python 愛好者團隊。 Flask基于Werkzeug WSGI 工具包和 Jinja2 模闆引擎。
Flask 在 Python 開發中,也是深受 Python Web 開發者的喜愛,因為它足夠輕量級,有很好的中文文檔,對于國内開發者來說是一個可以快速上手、非常不錯的Python Web 架構。
Bottle
Bottle 是一個快速、簡潔、輕量級的基于 WSIG 的微型 Web 架構,此架構隻由一個 .py 檔案,除了Python的标準庫外,其不依賴任何其他子產品。
Bottle 架構大緻可以分為四部分
路由系統:請求功能調用的映射,支援幹淨、簡潔的動态 url;
模闆系統: 快速且 pythonic 的内置模闆引擎,支援mako,jinja2 和 cheetah模闆。
實用程式:友善地通路表單資料,檔案上傳,cookie,标題和其他與 HTTP 相關的中繼資料。
伺服器:内置 HTTP 開發伺服器并支援 paste, fapws3, bjoern, gae, cherrypy 或其他 WSGI 支援 HTTP 伺服器。
下面就使用 PyCharm IDE 建立一個 Django 項目
在 PyCharm 專業版中,PyCharm 安裝完成後,自動就內建關于 Django 開發環境,我們可以友善快捷地建立一個 Django Web 項目,省去了中間安裝和配置 Django 的多個環節。
點選 Create 就開始建立,第一次建立 Django Web 項目可能會比較慢, PyCharm 會去下載下傳很多 Django 相關的庫,耐心的等一會就建立完成了。
建立完成後會生成如下目錄,下面就來講講各個py檔案到底起到什麼作用。
asgi.py
ASGI 相關配置,ASGI 是 Django 3.0 版本的一個新特性,在 Django 3.0 版本中支援 ASGI 伺服器器,在這之前是 WSGI,具體 ASGI 是什麼,講解起來比較深奧難懂,可以了解 ASGI 、WSGI、CGI ,将它們對比起來學習。
settings.py
這是 Django Web 項目秘鑰、國際化、應用定義等全局設定。
如将項目設定為簡體中文,Django Web 項目建立完成後預設是美式英語的,時區是 UTC的。
urls.py
Web 相關路徑設定。
wsgi.py
同 asgi.py 。
templates
Django Web 項目中靜态資源或 HTML 檔案、CSS 樣式存放目錄。
manage.py
Django Web 項目啟動入口。運作 manage.py 就可以啟動 Django Web 項目。
運作 manage.py ,啟動 Django Web 項目。運作完成後,控制台資訊顯示如下,表示 Django Web 項目運作完成。
在浏覽器中通路本地 8080 端口,即可展示出剛才建立并運作完成的 Django Web 項目。
Done ! 一個 Python 中的Django Web 項目就建立并運作完成了。是不是有點簡單,下期來點比較難的,更多精彩,敬請下回分解。