Flask 學習筆記

2021-08-20 18:21:18 字數 2742 閱讀 4442

因為mac自帶了python2.7,所以這個文章是基於2.7版本的

依賴於兩個外部庫:werkzeug和jinjia2.

werkzeug是乙個wsgi工具集,jinjia2負責渲染模版

2. 安裝

1)mac osx或linux

sudo pip install virtualenv
$ mkdir myproject

$ cd myproject

$ virtualenv venv

啟用virtualenv環境

$ . venv/bin/activate
啟用flask

$ pip install flask
3. 搭建工程

1)工程目錄

static中放置靜態資源如js、css、image等

templates中放置頁面

__init__.py則是flask應用

2)首先引入flask需要的庫,直接*全部引入了

建立該類的例項,第乙個引數是應用模組或者包的名稱。

通過route的decorator告訴flask什麼樣的url能夠觸發函式

return渲染了放在template中的模版檔案

通過run()使應用跑起來,設定debug為true則是除錯模式。

from flask import *

def init():

return render_template('index.html')

if __name__ == '__main__':

3)通過python __init__.py執行

在瀏覽器中通過localhost:5000執行

4. 路由

乙個小的工程已經搭建完了,下面要設定不同頁面的路由

1)通過route()裝飾器來設定

def index():

return 'index page'

def hello():

return 'hello world'

2)帶引數的路由,規則則是

def show_user_profile(username):

# show the user profile for that user

return 'user %s' % username

3) 設定請求方式,依舊是在route裝飾器中

4)靜態檔案存在static中,引用方式

5)頁面渲染有兩種方式,一種是直接寫在py檔案中,一種是呼叫靜態頁面

1)寫在py檔案中

def index():

return 'index page'

2)寫在靜態檔案中

def init():

return render_template('index.html')

3)需要傳引數的話

def hello(name=none):

return render_template('hello.html', name=name)

5. 前面說了flask其實是基於jinja2的,這裡介紹一下jinja2

2)用法:大致分為三種}\\,語法有點像php

}

姓名:}

年齡:}

不存在年齡

3)過濾器:這就類似vue中的filter功能,好像好多語言都有這個。記錄幾個常用的

4) 過濾器對應著測試器,過濾器通過條件過濾,測試器通過條件看是否符合條件

name is: }

5)jinja2有全域性函式的概念,有一些內建函式,也可以自定義

6. blueprint

1) 介紹:乙個css框架

2)使用:

排版相關class

.hide隱藏元素

.quiet使字型顏色柔和

.loud黑色字型

.highlight黃色背景

.added綠色背景

.removed紅色背景

.first移除左側margin/padding

.last移除右側margin/padding

.top移除頂部margin/padding

.bottom移除底部margin/padding

**樣式:預設24列,每列寬30px,邊距10px;

通過加入.text等類控制    

建立網格

頭部 

第一列

中間列

最後一列

尾部

驗證器:檢查核心css裡的檔案

壓縮器:當css檔案修改後需要重新壓縮時呼叫

Flask學習筆記

web 發展至今,特別是伺服器端,涉及到的知識 內容,非常廣泛。這對程式設計師的要求會越來越高。如果採用成熟,穩健的框架,那麼一些基礎的工作,比如,網路操作 資料庫訪問 會話管理等都可以讓框架來處理,那麼程式開發人員可以把精力放在具體的業務邏輯上面。使用web框架開發web應用程式可以降低開發難度,...

flask學習筆記

flask涉及到兩個重要的類 flask和blueprint 藍本 類。flask的應用程式需要flask類例項化才能執行,的基本配置資訊也包含在此類中。例項化如下 from flask import flask配置如下 blueprint類與flask類似,它能夠更好的組織web應用程式,並能延遲...

FLask學習筆記 Flask概念(一)

1.程式例項 flask類的物件,只有乙個強制指定的引數 程式主模組或包的名字。通常用如下 建立 from flask import flask2.路由和檢視函式 處理url和函式之間關係的程式稱為路由。def index return hello world 上圖中index 即為檢視函式 動態路...