摘要:中的代碼如下首先從導(dǎo)入,我并沒有,為何能導(dǎo)入呢我理解是建立項(xiàng)目的時(shí)候自動(dòng)幫我們做了這個(gè)事情,然后初始化一個(gè)對(duì)象,參數(shù)是,代表的是本身這個(gè)模塊的名字,我們暫時(shí)不用理解為何要傳入這個(gè)參數(shù)。
--引言請(qǐng)見我的簡書https://www.jianshu.com/p/e27...
我們打開PyCharm,新建一個(gè)Project,在左側(cè)選擇Flask,右側(cè)Location可選擇項(xiàng)目存放的位置,Project Interpreter選擇使用的編譯器,我們當(dāng)然可以選擇已經(jīng)安裝在電腦上的Python 3.6,但我建議選擇使用Virtualenv來建立一個(gè)虛擬的環(huán)境,這樣在虛擬環(huán)境里安裝包之類的,不會(huì)影響電腦上本身已經(jīng)裝的,并且后續(xù)如果項(xiàng)目較多的話也便于區(qū)分和管理。
點(diǎn)擊Create,創(chuàng)建好之后,PyCharm自動(dòng)在項(xiàng)目的文件夾下建立了static、templates文件夾和HarpQA.py,此外還有一個(gè)venv文件夾,是虛擬環(huán)境用的,我們可以暫時(shí)不用管它。(如果你的PyCharm是社區(qū)版的,那么無法像專業(yè)版那樣建立Flask項(xiàng)目,對(duì)應(yīng)的文件夾需要自己手動(dòng)建立)。HarpQA.py中的代碼如下:
from flask import Flask app = Flask(__name__) @app.route("/") def hello_world(): return "Hello World!" if __name__ == "__main__": app.run()
首先從flask導(dǎo)入Flask,(我并沒有pip install flask,為何能導(dǎo)入呢?我理解是建立flask項(xiàng)目的時(shí)候PyCharm自動(dòng)幫我們做了這個(gè)事情),然后初始化一個(gè)Flask對(duì)象app,參數(shù)是__name__,__name__代表的是本身這個(gè)模塊的名字,我們暫時(shí)不用理解為何要傳入這個(gè)參數(shù)。接下來是一個(gè)hello world函數(shù),并且有一個(gè)裝飾器@app.route("/"),意思是說,當(dāng)接收到"/"這個(gè)網(wǎng)址的請(qǐng)求時(shí),執(zhí)行hello world這個(gè)函數(shù),即返回字符串"Hello World!"(add_url_rule()也可以實(shí)現(xiàn)和@app.route一樣的功能 ,但使用裝飾器應(yīng)該更pythonic吧),最后使用app.run()運(yùn)行。運(yùn)行腳本后,提示Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
我們在瀏覽器中輸入http://127.0.0.1:5000/,就可以在網(wǎng)頁中看到"Hello World!"了。
我們還可以使用debug模式來運(yùn)行flask的服務(wù)端,開啟debug模式后,修改代碼不需要關(guān)閉程序,可以實(shí)時(shí)生效。有多種方法來開啟debug模式:
在app.run()中添加參數(shù),變?yōu)?b>app.run(debug=True);
在run之前增加app.debug = True;
新建config文件,在config文件中添加DEBUG = True,然后在程序中引入app.config.from_object(config);
在run之前增加app.config["DEBUG"] = True;
我們使用第3種方法,新建一個(gè)獨(dú)立的文件來保存各種參數(shù),以后項(xiàng)目增大的時(shí)候參數(shù)增多,便于管理。同樣在項(xiàng)目文件夾下新建config.py文件,添加DEBUG = True,DEBUG需大寫。在HarpQA.py中import config并添加app.config.from_object(config),再次運(yùn)行HarpQA.py,提示:
* Restarting with stat * Debugger is active! * Debugger PIN: 229-291-890 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
說明Debug模式已經(jīng)打開,我們可以直接修改代碼,例如把"Hello World!"
修改成"Hello"并保存,顯示:
* Detected change in "D:FlaskHarpQAHarpQA.py", reloading * Restarting with stat * Debugger is active! * Debugger PIN: 229-291-890 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
說明DEBUG模式檢測到了代碼的變化并自動(dòng)重載了,這時(shí)候刷新網(wǎng)頁,結(jié)果也變成了只顯示"Hello"。
如果我們要處理很多URL,可以一個(gè)一個(gè)去給他們寫對(duì)應(yīng)的視圖函數(shù),這有時(shí)候是不切實(shí)際的,我們有更高效的做法,如以下代碼:
@app.route("//") def hello(name): return "Hello %s" % name
@app.route中裝飾的地址是"/
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/41222.html
摘要:每天的內(nèi)容跑起來模板引擎表單文件上傳郵件發(fā)送一框架的簡介模型負(fù)責(zé)數(shù)據(jù)的操作視圖負(fù)責(zé)數(shù)據(jù)的展示控制器控制你的的操作以及視圖模板的渲染在中叫做模型負(fù)責(zé)數(shù)據(jù)的操作控制你的的操作以及視圖模板的渲染業(yè)務(wù)邏輯的操作模板負(fù)責(zé)數(shù)據(jù)的展示二架構(gòu)三概念是 flask 每天的內(nèi)容 flask跑起來 模板引擎 flask表單 文件上傳郵件發(fā)送 flask-sqlalchemy 一、web框架的簡介 M ...
摘要:一一個(gè)最小的應(yīng)用是程序?qū)嵗?,一個(gè)項(xiàng)目只能有一個(gè)程序?qū)嵗酚裳b飾器視圖函數(shù)返回一個(gè)字符串把程序保存為用解釋器運(yùn)行訪問,會(huì)看見問候。路由裝飾器這個(gè)函數(shù)的返回值稱為響應(yīng),是客戶端接收到的內(nèi)容。 一.一個(gè)最小的Flask應(yīng)用 from flask import Flask app = Flask(__name__) #app是程序?qū)嵗粋€(gè)項(xiàng)目只能有一個(gè)程序?qū)嵗?@app.route(/) #...
閱讀 3408·2023-04-26 02:40
閱讀 4732·2021-09-22 15:22
閱讀 1759·2021-09-22 10:02
閱讀 3605·2021-08-11 10:23
閱讀 1447·2019-08-30 15:55
閱讀 2549·2019-08-30 12:48
閱讀 676·2019-08-30 11:04
閱讀 768·2019-08-29 16:29