Flask框架(1.flask概述,Windows配置 virtualenv虚拟环境步骤和路由以及视图函数的定义)
框架:
? ? ?軟件框架,指的是為了實現某個業界標準或者完成特別基本任務的軟件組件規范,也指為了實現某個軟件組建規范時,提供規范所要求之基礎功能的軟件產品。
? ? ? 框架的功能類似于基礎設施,提供并實現最為基礎的軟件架構和體系。我們通常依據特定的框架實現更為復雜的業務邏輯。框架,就是程序的骨架。
1.Web框架:能夠被服務器調用起來,根據客戶端的不同請求執行不同的邏輯處理形成要返回的數據程序
? ? ? ? ? ? ? ? ? ?核心: 實現路由和視圖(業務邏輯處理)
? ? 1.1:使用框架的好處:??
? ? ? ? ? ? ?· 可重用? ? · 成熟、穩健? · 可擴展性良好? ?·? 提高開發速度
? ? 1.2 :? 什么是Web框架:
? ?
?1.3 Python中常見的Web框架
? ??
2. Flask就是一個? 使用python編寫的輕量級的“微內核”Web應用框架:只提供Web框架的核心功能,自由,靈活,高度定制
Flask誕生于2010年,是Armin ronacher(人名)用Python語言基于Werkzeug工具箱編寫的輕量級Web開發框架。它主要
? ?面向需求簡單的小應用。
? ? Flask沒有默認使用的數據庫,你可以選擇MySQL,也可以用NoSQL。其 WSGI 工具箱采用 Werkzeug(路由模塊) ,模? ? ?板引擎則使用 Jinja2 。
? ? 可以說Flask框架的核心就是Werkzeug和Jinja2。
Flask和Django和對比
?? ? flask有很多的擴展庫,靈活性非常高
3.Flask中很多功能都需要擴展包來提供
? Flask擴展包:
- ? Flask-SQLalchemy:操作數據庫;
- Flask-migrate:管理遷移數據庫;
- Flask-Mail:郵件;
- Flask-WTF:表單;
- Flask-script:插入腳本;
- Flask-Login:認證用戶狀態;
- Flask-RESTful:開發REST API的工具;
- Flask-Bootstrap:集成前端Twitter Bootstrap框架;
- Flask-Moment:本地化日期和時間;
4. Windows里面安裝環境,,按照下面的步驟進行搭建
那么什么是虛擬環境呢?
這里給大家舉一個簡單的例子,桌面上有一個word文件,我們打開修改這個文件,修改了一會之后發現還是原來的文件比較好,這個時候我想找回原來的文件就比較困難了。那么怎么辦呢?就有這樣一種解決方案,在修改文件之前,先復制一份,然后在副本文件里進行修改,這樣即使發現修改有錯,也不會影響原始文件。
虛擬環境其實就是對真實pyhton環境的復制,這樣我們在復制的python環境中安裝包就不會影響到真實的python環境。通過建立多個虛擬環境,在不同的虛擬環境中開發項目就實現了項目之間的隔離。
? ? 1:? ? ? 進入cmd? ??pip? ? install virtualenv
? ? 2:? ? ? 進入cmd? ? pip install virtualenvwrapper-win
? ? 3.? ? ? 檢查是否已經把 Python對應的三個環境變量添加到系統的PATH里面
? ? ? ? ? ? ?① :? 安裝Python的根目錄,? (根目錄下有python.exe)\
? ? ? ? ? ? ? ②: Python的Lib路徑
? ? ? ? ? ? ? ③:? Python的Scripts路徑
? ? 3:? ? ?創建項目文件夾(最好不好中文),然后在cmd里面進入項目文件夾,然后安裝虛擬環境env? ? (virtualenv env)
? ? ? ? ? ? ?如果安裝的時候后進入/env/Scripts,沒有activate.bat或者報錯,則執行
? ? ? ? ? ? ?virtualenv env? --no-setuptools? ?--no-pip? ?--no-wheel
? ? 4:? ??進入到 自己建立的項目文件夾/env/Scripts? ? ?輸入(activate.bat)進入到環境
? ? ? ? ? ?deactivate.bat 退出環境
? ?5:??mkvirtualenv? ?flask工程名字? ? ?創建flask工程
? ? ? ? 如果創建工程的時候報錯,執行? ??mkvirtualenv? ?flask工程名字? --no-setuptools? ?--no-pip? ?--no-wheel
? ?6:查看所有工程和路徑:? ? ?lsvirtualenv
? ?7:?mkvirtualenv flask工程名 -p python2? ? ? 可以指定python的版本,前提是在自己電腦的環境變量中設置2和3的共? ? ? ? ? ? ? ?存?問題
? ?8: 刪除虛擬環境??rmvirtualenv 虛擬環境的名字
?5. 新建一個py文件
# coding=utf-8 """ @author : tongwei # @Date : 2018/12/18 @File : hello.py """ from flask import Flask# 創建flask的應用對象 # __name__:魔法變量,當前文件所在的模塊名字 # 模塊名,flask以這個模塊所在的目錄為總目錄, # 默認這個目錄中的static為靜態目錄,templates為模塊目錄 app = Flask(__name__)@app.route("/") # 利用裝飾器到底和哪個視圖函數綁定在一起傳路徑就行 def index():"""定義的視圖函數,:return:"""return "hello flask" # 返回的字符串到網頁上顯示出來if __name__ == '__main__':# 啟動flask程序app.run()? ? ?運行程序:
?
在瀏覽器中輸入該網址,就可以了,結果如圖:
?6.路由:即視圖函數的裝飾器
? ? ? 客戶端(列如Web 瀏覽器,把請求發送給Web服務器,Web服務器在把請求發送給Flask程序實例,程序實例需要知道對每個URL請求運行哪些代碼,所以保存了一個URL到Python函數的映射關系。
? 處理URL和函數之間關系的程序稱為路由)
?7. 視圖函數:
? ? ?視圖函數返回值稱為響應,是客戶端接收到的內容,如果客戶端是Web瀏覽器,響應就是顯示給用戶查看的文檔
?
總結
以上是生活随笔為你收集整理的Flask框架(1.flask概述,Windows配置 virtualenv虚拟环境步骤和路由以及视图函数的定义)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python网络编程(1.利用socke
- 下一篇: Mongodb数据库(1.mongodb