基於Python的Web應用開發實踐總結

2022-08-15 15:42:21 字數 2454 閱讀 5151

本次學習採用的是flask框架。根據教程開發個人部落格系統。部落格介面如圖所示。

整個學習過程收穫很多,以下是學習總結。

virtualenv是第三方工具,用於建立虛擬環境。可以為每個程式單獨建立虛擬環境,每個虛擬環境互不影響,並且不影響全域性的環境,也就是說在不同的虛擬環境裡可以使用不同版本的python和外掛程式等。使用虛擬環境的另一好處是,不需要管理員許可權。

以下是virtualenv的安裝和使用:

1、檢查是否安裝了virtualenvvirtualenv --version

python ez_setup.py

easy_install virtualenv

3、建立:在需要使用虛擬環境的工程根目錄下使用命令

virtualenv venv
venv為虛擬環境的名字,可根據個人需求更改。建立成功後,在當前資料夾下會出現乙個子資料夾,名字就是上述命令中指定的引數,與虛擬環境相關的檔案都儲存在這個子資料夾中。

4、使用:虛擬環境的使用需要啟用,命令如下:

venv\scripts\activate
成功啟用的話命令提示符會變為(venv) $,如果需要退出虛擬環境,可使用命令:

deactivate
基本專案結構如圖所示:

2、migrations 資料夾包含資料庫遷移指令碼;

3、requirements裡的檔案列出了不同開發環境下需要的所有依賴包,便於在其他電腦中重新生成相同的虛擬環境;

4、 config.py 儲存配置;

5、manage.py 用於啟動程式以及其他的程式任務。

將資料夾變為python模組只需要在該資料夾下新增__init__.py即可。注:_init_.py的作用如下:

相當於class中的definit(self):函式,用來初始化模組。

把所在目錄當作乙個package處理

更多相關

flask使用藍本技術將專案模組化。藍本和程式類似,也可以定義路由。不同的是,在藍本中定義的路由處於休眠狀態, 直到藍本註冊到程式上後,路由才真正成為程式的一部分。使用位於全域性作用域中的藍本時,定義路由的方法幾乎和單指令碼程式一樣。

藍本的使用分為兩步:建立和註冊。

from flask import blueprint #匯入藍本模組

main = blueprint('main', __name__) # 第乙個引數為藍本的名字,第二個引數為藍本所在的包或模組

from . import views, errors #避免迴圈匯入依賴,在末尾匯入錯誤處理程式和路由程式

from .main import main as main_blueprint

flask擴充套件可以理解為外掛程式,小到可以稱為「微框架」,但是,小並不意味著功能少。flask的核心包含了基本服務,其他功能則可通過擴充套件來實現。

擴充套件的使用也分為兩步:安裝和匯入。一般使用命令pip install 副檔名來安裝擴充套件,安裝完成後,直接在程式中用from ... import ...語句匯入使用即可(專為 flask 開發的擴充套件都暴漏在 flask.ext 命名空間下)。以下示例**為安裝使用flask-script擴充套件:

首先,在命令列中安裝flask-script:

(venv) $ pip install flask-script
在程式中使用:

from flask.ext.script import manager  #匯入

# ... 中間無關**省略

if __name__ == '__main__':

manager.run()

本專案在開發過程中,使用到了許多擴充套件,例如flask-login、flask-bootstrap、flask-wtf等等。

基於python的web應用框架

1.部落格寫作背景 由於自己只擅長用python語言開發專案,受專案部署的需要,需要研究基於python的web應用框架。2.基於python的常見web伺服器框架 flask,uvicorn,django flask入門指南 flask教程 python uvicorn初體驗 4.第乙個flask...

Python使用django搭建web開發環境

檢測是否安裝完成 c windows system32 python v python 3.5.2 安裝 virtualenv c windows system32 pip install virtualenv安裝成功後就可以開始建立虛擬環境,指定乙個你喜歡的目錄 c windows system3...

基於Web窗體的Web應用程式的優勢

1.它支援在http上儲存狀態的事件模型,這有益於line of business的web應用程式 開發。2.基於web窗體的應用程式提供了大量的事件,它們被數以百計的伺服器控制項所支援。它使用了乙個page controller模式來為單個頁面新增功能。3.它使用了檢視狀態或者基於伺服器的表單,這...