Python FLASK學習筆記

2021-10-12 07:16:51 字數 1786 閱讀 3376

1、在使用 flask 給客戶端返回 json 資料時,可以直接使用 jsonify 生成乙個 json 的響應;

def demo():

json_dict =

return jsonify(json_dict)

2、重定向

3、flask上下文引數

(1)請求上下文(request context)

請求上下文物件有:request、session

session

請求上下文:儲存了客戶端和伺服器互動的資料

應用上下文:flask 應用程式執行過程中,儲存的一些配置資訊,比如程式名、資料庫連線、應用資訊等

cookie使用

4、資料庫操作

flask-sqlalchemy用法詳解

主要思路:

(1)配置資料庫資訊、獲取連線

(2)編寫資料庫表對應的類

(3)物件進行操作,實現對資料庫的操作

主要**:

資料庫配置和連線:

#連線資料庫

查詢:

user.query.filter() #返回所有

user.query.filter(user.age>20) #查詢年齡大於20的資料

user.query.filter(user.age>20,user.age<40) #查詢年齡大於20的資料 and 小於40

filter_by 只支援引數為關鍵字引數:類名.query.filter_by(屬性名=值...)

data = user.query.filter_by(id=2)

data = user.query.filter_by(id>2) #錯誤寫法 不可以使用模糊查到

data = user.query.filter_by(id=2,age=27)

all()     查詢所有

filter_by / filter  單個查詢

filter_by  不需要指定是哪個類的哪個屬性,只需要制定屬性及其目標值就可以了, 並且只能寫具體的值不能寫模糊值

filter    filter中指定查詢條件的時候需要指定類名的字首。可以指定模糊值

user.query.get(2) 獲取id對應的資料
order_by    排序:預設公升序

data = user.query.order_by(user.age) #公升序

data = user.query.order_by(-user.age) #降序

limit

user.query.filter(user.age>30).limit(2)   查到的結果只取兩個
查詢結果處理:

一般查詢結果為單個類的例項或者列表,列表中裝了類的例項。比如:

data = py_user.query.order_by(-py_user.id)

for d in data:

print("name:" + d.name)

5、gunicorn:

只要讓flask應用實現高併發:引數work_class  不設定預設是sync同步的,設定成gevent 就是用非同步,使用gevent,可以獲得極高的併發效能,但gevent只能在unix/linux下執行,在windows下不保證正常安裝和執行。 windows下要支援併發 用apache。更多參考文章:

Python Flask學習報告

from flask import flask defindex return def user name return format name defindex pass from flask import make request response make request response.s...

Python Flask框架學習

1.flask系列教程 1 認識web 2.flask系列教程 2 flask簡介 3.flask系列教程 3 專案配置 4.flask系列教程 4 url與檢視 5.flask系列教程 5 模板簡介 6.flask系列教程 7 jinja2模板概述 7.flask系列教程 8 jinja2過濾器 ...

後端學習 Python Flask

python3 flask.session 第一次訪問網頁需要登入,之後一定時間內不需要登入 首先引入session模組 from flask import session設定乙個用於session加密的金鑰 11 主頁處理函式 defwelcome session.permanent true 設...