Flask框架簡介和入手

引用維基百科中對flask框架的介紹:

Flask是一個使用Python編寫的輕量級Web應(yīng)用框架?;赪erkzeug WSGI工具箱和Jinja2 模板引擎Flask使用BSD授權(quán)。
Flask被稱為“microframework”,因為它使用簡單的核心,用extension增加其他功能。Flask沒有默認使用的數(shù)據(jù)庫、窗體驗證工具。然而,F(xiàn)lask保留了擴增的彈性,可以用Flask-extension加入這些功能:ORM、窗體驗證工具、文件上傳、各種開放式身份驗證技術(shù)。

下載框架

flask的官方文檔提供了很多關(guān)于如何下載的說明,其中最為常用的當(dāng)然是pip啦

pip install flask ( 或者 pip3 install flask )

搭建環(huán)境

flask框架使用也非常簡單,利用python兩行代碼就可以搭建這個框架

from flask import Flask

Flask(__name__).run() # 默認會打開本機5000端口

運行這個python代碼,顯示如下:


result.png

然后我們打開瀏覽器,輸入 http://127.0.0.1:5000 地址,顯示如下:


result2.png

WTF???為何是404

不用擔(dān)心,服務(wù)是啟動了的,之時我們在訪問這個地址時,服務(wù)器沒有拿到這個路由對應(yīng)的東西,所以才會發(fā)生404錯誤

下面我們呢就來配置第一個頁面,我們就以在頁面上顯示“hello flak”

首先我們寫入以下代碼,保存為 app.py ,

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello_flask():
    return "Hello, Flask"

app.run()

運行這個文件,打開瀏覽器,你會發(fā)現(xiàn)Hello, Flask出現(xiàn)了

helloflask.png

怎么出現(xiàn)的呢?
在這段代碼中,告訴了服務(wù)器應(yīng)該怎么做

from flask import Flask

app = Flask(__name__)

@app.route('/')      # 這里告訴了服務(wù)器,當(dāng)瀏覽其訪問網(wǎng)站的跟路徑,就執(zhí)行下面這個函數(shù)
def hello_flask():    # 函數(shù)hello_world()返回的結(jié)果為字符串“Hello,F(xiàn)lask”
    return "Hello, Flask"

app.run()

修改返回字符串

如果我們把“Hello,Flask”替換為HTML代碼呢?

  return "<h1>歡迎來到我的主頁</h1>"

結(jié)果變成了這樣,


個人主頁.png

看來這和我們的預(yù)期相符。


返回文件

如果是這樣一個簡單的頁面就好了,如果頁面內(nèi)容很多,難道我要返回所有網(wǎng)頁上的內(nèi)容嗎?
我們在app.py的同級目錄下新建一個叫templates的目錄,并在這個目錄下創(chuàng)建一個叫 index.html 的文件,包含以下內(nèi)容:

<!doctype html>
<html>
<head>
<meta charset='utf-8'>
<title>首頁</title>
</head>
<body>
<h1>歡迎來到我的主頁</h1>
<p>這是通過python+flask框架搭建的</p>
</body>
</html>

然后我們用flask中的render_template()函數(shù)返回這個頁面的內(nèi)容,修改函數(shù)為如下:

@app.route('/')
def index():
    return render_template('index.html')

然后重新運行app.py文件,訪問http://127.0.0.1:5000,你將會看到瀏覽器完全返回了index.html的內(nèi)容

index.png


關(guān)于flask框架的初次使用就到這里,接下來會帶來一系列的flask的基礎(chǔ)教程

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1.1 搭建開發(fā)環(huán)境 用pip+virtualenv管理包和虛擬環(huán)境 這里個人推薦使用conda環(huán)境和包管理工具(...
    i_1312閱讀 621評論 0 4
  • “你查到什么了嗎?”幾天過去了,梁楓玥忍不住想問問事情的進展。 “沒有,那個和我聯(lián)系的業(yè)務(wù)員已經(jīng)離職了,找不到他人...
    www妞兒閱讀 341評論 0 1
  • 熊志軍~【日精進打卡第875天】 沈陽眼寶食品~付達新商貿(mào)~眾德營銷 沈陽盛和塾道盛組/稻芽七組 {祈愿} 201...
    熊志軍閱讀 163評論 0 0
  • 2018.5.24 忙而不亂 工作上輕松了幾天之后,有了一次爆發(fā),從開始坐到電腦前,就沒怎么停過,各種行程報價,各...
    陸嫻1983閱讀 161評論 0 0
  • 老馬識途_bd58閱讀 187評論 0 0

友情鏈接更多精彩內(nèi)容